Skip to content

Commit 0eb8393

Browse files
[dotnet] Propagate async throughout test setup and teardown (#14775)
1 parent fe5b198 commit 0eb8393

11 files changed

+54
-44
lines changed

dotnet/test/chrome/ChromeSpecificTests.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,18 @@
1919

2020
using NUnit.Framework;
2121
using OpenQA.Selenium.Environment;
22+
using System.Threading.Tasks;
2223

2324
namespace OpenQA.Selenium.Chrome
2425
{
2526
[TestFixture]
2627
public class ChromeSpecificTests : DriverTestFixture
2728
{
2829
[OneTimeTearDown]
29-
public void RunAfterAnyTests()
30+
public async Task RunAfterAnyTestsAsync()
3031
{
3132
EnvironmentManager.Instance.CloseCurrentDriver();
32-
EnvironmentManager.Instance.WebServer.Stop();
33+
await EnvironmentManager.Instance.WebServer.StopAsync();
3334
}
3435
}
3536
}

dotnet/test/common/AssemblyFixture.cs

+7-6
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
using NUnit.Framework;
2121
using OpenQA.Selenium.Environment;
22+
using System.Threading.Tasks;
2223

2324
namespace OpenQA.Selenium
2425
{
@@ -31,25 +32,25 @@ public AssemblyFixture()
3132
}
3233

3334
[OneTimeSetUp]
34-
public void RunBeforeAnyTest()
35+
public async Task RunBeforeAnyTestAsync()
3536
{
3637
Internal.Logging.Log.SetLevel(Internal.Logging.LogEventLevel.Trace);
3738

38-
EnvironmentManager.Instance.WebServer.Start();
39+
await EnvironmentManager.Instance.WebServer.StartAsync();
3940
if (EnvironmentManager.Instance.Browser == Browser.Remote)
4041
{
41-
EnvironmentManager.Instance.RemoteServer.Start();
42+
await EnvironmentManager.Instance.RemoteServer.StartAsync();
4243
}
4344
}
4445

4546
[OneTimeTearDown]
46-
public void RunAfterAnyTests()
47+
public async Task RunAfterAnyTestsAsync()
4748
{
4849
EnvironmentManager.Instance.CloseCurrentDriver();
49-
EnvironmentManager.Instance.WebServer.Stop();
50+
await EnvironmentManager.Instance.WebServer.StopAsync();
5051
if (EnvironmentManager.Instance.Browser == Browser.Remote)
5152
{
52-
EnvironmentManager.Instance.RemoteServer.Stop();
53+
await EnvironmentManager.Instance.RemoteServer.StopAsync();
5354
}
5455
}
5556
}

dotnet/test/common/Environment/EnvironmentManager.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -199,11 +199,11 @@ private EnvironmentManager()
199199
{
200200
if (remoteServer != null)
201201
{
202-
remoteServer.Stop();
202+
remoteServer.StopAsync().Wait();
203203
}
204204
if (webServer != null)
205205
{
206-
webServer.Stop();
206+
webServer.StopAsync().Wait();
207207
}
208208
CloseCurrentDriver();
209209
}

dotnet/test/common/Environment/RemoteSeleniumServer.cs

+5-4
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
using System.IO;
2323
using System.Net;
2424
using System.Net.Http;
25+
using System.Threading.Tasks;
2526

2627
namespace OpenQA.Selenium.Environment
2728
{
@@ -38,7 +39,7 @@ public RemoteSeleniumServer(string projectRoot, bool autoStartServer)
3839
autoStart = autoStartServer;
3940
}
4041

41-
public void Start()
42+
public async Task StartAsync()
4243
{
4344
if (autoStart && (webserverProcess == null || webserverProcess.HasExited))
4445
{
@@ -67,7 +68,7 @@ public void Start()
6768
{
6869
try
6970
{
70-
using var response = httpClient.GetAsync("http://localhost:6000/wd/hub/status").GetAwaiter().GetResult();
71+
using var response = await httpClient.GetAsync("http://localhost:6000/wd/hub/status");
7172

7273
if (response.StatusCode == HttpStatusCode.OK)
7374
{
@@ -86,15 +87,15 @@ public void Start()
8687
}
8788
}
8889

89-
public void Stop()
90+
public async Task StopAsync()
9091
{
9192
if (autoStart && webserverProcess != null && !webserverProcess.HasExited)
9293
{
9394
using var httpClient = new HttpClient();
9495

9596
try
9697
{
97-
using var response = httpClient.GetAsync("http://localhost:6000/selenium-server/driver?cmd=shutDownSeleniumServer").GetAwaiter().GetResult();
98+
using var response = await httpClient.GetAsync("http://localhost:6000/selenium-server/driver?cmd=shutDownSeleniumServer");
9899
}
99100
catch (Exception ex) when (ex is HttpRequestException || ex is TimeoutException)
100101
{

dotnet/test/common/Environment/TestWebServer.cs

+5-4
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
using System.Net.Http;
2626
using System.Runtime.InteropServices;
2727
using System.Text;
28+
using System.Threading.Tasks;
2829

2930
namespace OpenQA.Selenium.Environment
3031
{
@@ -50,7 +51,7 @@ public TestWebServer(string projectRoot, TestWebServerConfig config)
5051
this.port = config.Port;
5152
}
5253

53-
public void Start()
54+
public async Task StartAsync()
5455
{
5556
if (webserverProcess == null || webserverProcess.HasExited)
5657
{
@@ -146,7 +147,7 @@ public void Start()
146147
{
147148
try
148149
{
149-
using var response = httpClient.GetAsync(EnvironmentManager.Instance.UrlBuilder.LocalWhereIs("simpleTest.html")).GetAwaiter().GetResult();
150+
using var response = await httpClient.GetAsync(EnvironmentManager.Instance.UrlBuilder.LocalWhereIs("simpleTest.html"));
150151

151152
if (response.StatusCode == HttpStatusCode.OK)
152153
{
@@ -174,15 +175,15 @@ public void Start()
174175
}
175176
}
176177

177-
public void Stop()
178+
public async Task StopAsync()
178179
{
179180
if (webserverProcess != null)
180181
{
181182
using (var httpClient = new HttpClient())
182183
{
183184
try
184185
{
185-
using (httpClient.GetAsync(EnvironmentManager.Instance.UrlBuilder.LocalWhereIs("quitquitquit")).GetAwaiter().GetResult())
186+
using (await httpClient.GetAsync(EnvironmentManager.Instance.UrlBuilder.LocalWhereIs("quitquitquit")))
186187
{
187188

188189
}

dotnet/test/edge/AssemblyTeardown.cs

+5-4
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
using NUnit.Framework;
2121
using OpenQA.Selenium.Environment;
22+
using System.Threading.Tasks;
2223

2324
namespace OpenQA.Selenium.Edge
2425
{
@@ -27,16 +28,16 @@ namespace OpenQA.Selenium.Edge
2728
public class MySetUpClass
2829
{
2930
[OneTimeSetUp]
30-
public void RunBeforeAnyTest()
31+
public async Task RunBeforeAnyTestAsync()
3132
{
32-
EnvironmentManager.Instance.WebServer.Start();
33+
await EnvironmentManager.Instance.WebServer.StartAsync();
3334
}
3435

3536
[OneTimeTearDown]
36-
public void RunAfterAnyTests()
37+
public async Task RunAfterAnyTestsAsync()
3738
{
3839
EnvironmentManager.Instance.CloseCurrentDriver();
39-
EnvironmentManager.Instance.WebServer.Stop();
40+
await EnvironmentManager.Instance.WebServer.StopAsync();
4041
}
4142
}
4243
}

dotnet/test/firefox/AssemblyTeardown.cs

+5-4
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
using NUnit.Framework;
2121
using OpenQA.Selenium.Environment;
22+
using System.Threading.Tasks;
2223

2324
namespace OpenQA.Selenium.Firefox
2425
{
@@ -27,16 +28,16 @@ namespace OpenQA.Selenium.Firefox
2728
public class MySetUpClass
2829
{
2930
[OneTimeSetUp]
30-
public void RunBeforeAnyTest()
31+
public async Task RunBeforeAnyTestAsync()
3132
{
32-
EnvironmentManager.Instance.WebServer.Start();
33+
await EnvironmentManager.Instance.WebServer.StartAsync();
3334
}
3435

3536
[OneTimeTearDown]
36-
public void RunAfterAnyTests()
37+
public async Task RunAfterAnyTestsAsync()
3738
{
3839
EnvironmentManager.Instance.CloseCurrentDriver();
39-
EnvironmentManager.Instance.WebServer.Stop();
40+
await EnvironmentManager.Instance.WebServer.StopAsync();
4041
}
4142
}
4243
}

dotnet/test/ie/AssemblyTeardown.cs

+5-4
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
using NUnit.Framework;
2121
using OpenQA.Selenium.Environment;
22+
using System.Threading.Tasks;
2223

2324
namespace OpenQA.Selenium.IE
2425
{
@@ -27,16 +28,16 @@ namespace OpenQA.Selenium.IE
2728
public class MySetUpClass
2829
{
2930
[OneTimeSetUp]
30-
public void RunBeforeAnyTest()
31+
public async Task RunBeforeAnyTestAsync()
3132
{
32-
EnvironmentManager.Instance.WebServer.Start();
33+
await EnvironmentManager.Instance.WebServer.StartAsync();
3334
}
3435

3536
[OneTimeTearDown]
36-
public void RunAfterAnyTests()
37+
public async Task RunAfterAnyTestsAsync()
3738
{
3839
EnvironmentManager.Instance.CloseCurrentDriver();
39-
EnvironmentManager.Instance.WebServer.Stop();
40+
await EnvironmentManager.Instance.WebServer.StopAsync();
4041
}
4142
}
4243
}

dotnet/test/remote/AssemblyTeardown.cs

+7-6
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
using NUnit.Framework;
2121
using OpenQA.Selenium.Environment;
22+
using System.Threading.Tasks;
2223

2324
namespace OpenQA.Selenium.Remote
2425
{
@@ -27,23 +28,23 @@ namespace OpenQA.Selenium.Remote
2728
public class MySetUpClass
2829
{
2930
[OneTimeSetUp]
30-
public void RunBeforeAnyTest()
31+
public async Task RunBeforeAnyTestAsync()
3132
{
32-
EnvironmentManager.Instance.WebServer.Start();
33+
await EnvironmentManager.Instance.WebServer.StartAsync();
3334
if (EnvironmentManager.Instance.Browser == Browser.Remote)
3435
{
35-
EnvironmentManager.Instance.RemoteServer.Start();
36+
await EnvironmentManager.Instance.RemoteServer.StartAsync();
3637
}
3738
}
3839

3940
[OneTimeTearDown]
40-
public void RunAfterAnyTests()
41+
public async Task RunAfterAnyTestsAsync()
4142
{
4243
EnvironmentManager.Instance.CloseCurrentDriver();
43-
EnvironmentManager.Instance.WebServer.Stop();
44+
await EnvironmentManager.Instance.WebServer.StopAsync();
4445
if (EnvironmentManager.Instance.Browser == Browser.Remote)
4546
{
46-
EnvironmentManager.Instance.RemoteServer.Stop();
47+
await EnvironmentManager.Instance.RemoteServer.StopAsync();
4748
}
4849
}
4950
}

dotnet/test/support/UI/PopupWindowFinderTest.cs

+5-4
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
using NUnit.Framework;
2121
using OpenQA.Selenium.Environment;
22+
using System.Threading.Tasks;
2223

2324
namespace OpenQA.Selenium.Support.UI
2425
{
@@ -27,16 +28,16 @@ public class PopupWindowFinderTest : DriverTestFixture
2728
{
2829
//TODO: Move these to a standalone class when more tests rely on the server being up
2930
[OneTimeSetUp]
30-
public void RunBeforeAnyTest()
31+
public async Task RunBeforeAnyTestAsync()
3132
{
32-
EnvironmentManager.Instance.WebServer.Start();
33+
await EnvironmentManager.Instance.WebServer.StartAsync();
3334
}
3435

3536
[OneTimeTearDown]
36-
public void RunAfterAnyTests()
37+
public async Task RunAfterAnyTestsAsync()
3738
{
3839
EnvironmentManager.Instance.CloseCurrentDriver();
39-
EnvironmentManager.Instance.WebServer.Stop();
40+
await EnvironmentManager.Instance.WebServer.StopAsync();
4041
}
4142

4243
[Test]

dotnet/test/support/UI/SelectBrowserTests.cs

+5-4
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,24 @@
2121
using OpenQA.Selenium.Environment;
2222
using System;
2323
using System.Collections.Generic;
24+
using System.Threading.Tasks;
2425

2526
namespace OpenQA.Selenium.Support.UI
2627
{
2728
[TestFixture]
2829
public class SelectBrowserTests : DriverTestFixture
2930
{
3031
[OneTimeSetUp]
31-
public void RunBeforeAnyTest()
32+
public async Task RunBeforeAnyTestAsync()
3233
{
33-
EnvironmentManager.Instance.WebServer.Start();
34+
await EnvironmentManager.Instance.WebServer.StartAsync();
3435
}
3536

3637
[OneTimeTearDown]
37-
public void RunAfterAnyTests()
38+
public async Task RunAfterAnyTestsAsync()
3839
{
3940
EnvironmentManager.Instance.CloseCurrentDriver();
40-
EnvironmentManager.Instance.WebServer.Stop();
41+
await EnvironmentManager.Instance.WebServer.StopAsync();
4142
}
4243

4344
[SetUp]

0 commit comments

Comments
 (0)