@@ -31,14 +31,9 @@ namespace OpenQA.Selenium.Environment;
3131public class EnvironmentManager
3232{
3333 private static EnvironmentManager instance ;
34- private Type driverType ;
35- private Browser browser ;
34+ private readonly Type driverType ;
3635 private IWebDriver driver ;
37- private UrlBuilder urlBuilder ;
38- private TestWebServer webServer ;
39- private DriverFactory driverFactory ;
40- private RemoteSeleniumServer remoteServer ;
41- private string remoteCapabilities ;
36+ private readonly DriverFactory driverFactory ;
4237
4338 private EnvironmentManager ( )
4439 {
@@ -94,10 +89,10 @@ private EnvironmentManager()
9489 throw new ArgumentOutOfRangeException ( $ "Unable to find driver type { driverConfig . DriverTypeName } ") ;
9590 }
9691
97- browser = driverConfig . BrowserValue ;
98- remoteCapabilities = driverConfig . RemoteCapabilities ;
92+ Browser = driverConfig . BrowserValue ;
93+ RemoteCapabilities = driverConfig . RemoteCapabilities ;
9994
100- urlBuilder = new UrlBuilder ( websiteConfig ) ;
95+ UrlBuilder = new UrlBuilder ( websiteConfig ) ;
10196
10297 // When run using the `bazel test` command, the following environment
10398 // variable will be set. If not set, we're running from a build system
@@ -188,48 +183,28 @@ private EnvironmentManager()
188183 // Use the default one.
189184 }
190185
191- webServer = new TestWebServer ( projectRoot , webServerConfig ) ;
186+ WebServer = new TestWebServer ( projectRoot , webServerConfig ) ;
192187 bool autoStartRemoteServer = false ;
193- if ( browser == Browser . Remote )
188+ if ( Browser == Browser . Remote )
194189 {
195190 autoStartRemoteServer = driverConfig . AutoStartRemoteServer ;
196191 }
197192
198- remoteServer = new RemoteSeleniumServer ( projectRoot , autoStartRemoteServer ) ;
193+ RemoteServer = new RemoteSeleniumServer ( projectRoot , autoStartRemoteServer ) ;
199194 }
200195
201196 ~ EnvironmentManager ( )
202197 {
203- if ( remoteServer != null )
204- {
205- remoteServer . StopAsync ( ) . Wait ( ) ;
206- }
207- if ( webServer != null )
208- {
209- webServer . StopAsync ( ) . Wait ( ) ;
210- }
198+ RemoteServer ? . StopAsync ( ) . Wait ( ) ;
199+ WebServer ? . StopAsync ( ) . Wait ( ) ;
211200 CloseCurrentDriver ( ) ;
212201 }
213202
214203 public event EventHandler < DriverStartingEventArgs > DriverStarting ;
215204
216- public static EnvironmentManager Instance
217- {
218- get
219- {
220- if ( instance == null )
221- {
222- instance = new EnvironmentManager ( ) ;
223- }
224-
225- return instance ;
226- }
227- }
205+ public static EnvironmentManager Instance => instance ??= new EnvironmentManager ( ) ;
228206
229- public Browser Browser
230- {
231- get { return browser ; }
232- }
207+ public Browser Browser { get ; }
233208
234209 public string CurrentDirectory
235210 {
@@ -245,39 +220,17 @@ public string CurrentDirectory
245220 }
246221 }
247222
248- public TestWebServer WebServer
249- {
250- get { return webServer ; }
251- }
223+ public TestWebServer WebServer { get ; }
252224
253- public RemoteSeleniumServer RemoteServer
254- {
255- get { return remoteServer ; }
256- }
225+ public RemoteSeleniumServer RemoteServer { get ; }
257226
258- public string RemoteCapabilities
259- {
260- get { return remoteCapabilities ; }
261- }
227+ public string RemoteCapabilities { get ; }
262228
263- public UrlBuilder UrlBuilder
264- {
265- get
266- {
267- return urlBuilder ;
268- }
269- }
229+ public UrlBuilder UrlBuilder { get ; }
270230
271231 public IWebDriver GetCurrentDriver ( )
272232 {
273- if ( driver != null )
274- {
275- return driver ;
276- }
277- else
278- {
279- return CreateFreshDriver ( ) ;
280- }
233+ return driver ?? CreateFreshDriver ( ) ;
281234 }
282235
283236 public IWebDriver CreateDriverInstance ( )
@@ -299,10 +252,7 @@ public IWebDriver CreateFreshDriver()
299252
300253 public void CloseCurrentDriver ( )
301254 {
302- if ( driver != null )
303- {
304- driver . Quit ( ) ;
305- }
255+ driver ? . Quit ( ) ;
306256 driver = null ;
307257 }
308258
0 commit comments