1+ using System ;
2+ using System . Collections ;
3+ using System . Collections . Generic ;
4+ using OpenQA . Selenium ;
5+ using WebDriverManager ;
6+ using WebDriverManager . DriverConfigs ;
7+ using WebDriverManager . DriverConfigs . Impl ;
8+ using Xunit ;
9+
10+ namespace IntegrationTests . BrowserTests
11+ {
12+ public class BrowserData : IEnumerable < object [ ] >
13+ {
14+ private readonly List < object [ ] > _data = new List < object [ ] >
15+ {
16+ new object [ ] { new ChromeConfig ( ) , DriverType . Chrome } ,
17+ new object [ ] { new EdgeConfig ( ) , DriverType . Edge } ,
18+ new object [ ] { new FirefoxConfig ( ) , DriverType . Firefox } ,
19+ new object [ ] { new IEConfig ( ) , DriverType . IE } ,
20+ new object [ ] { new OperaConfig ( ) , DriverType . Opera } ,
21+ new object [ ] { new PhantomConfig ( ) , DriverType . Phantom }
22+ } ;
23+
24+ public IEnumerator < object [ ] > GetEnumerator ( )
25+ {
26+ return _data . GetEnumerator ( ) ;
27+ }
28+
29+ IEnumerator IEnumerable . GetEnumerator ( )
30+ {
31+ return GetEnumerator ( ) ;
32+ }
33+ }
34+
35+ public class BrowserTests : IDisposable
36+ {
37+ private IWebDriver _webDriver ;
38+
39+ [ Theory , ClassData ( typeof ( BrowserData ) ) ]
40+ protected void VersionTest ( IDriverConfig driverConfig , DriverType driverType )
41+ {
42+ new DriverManager ( ) . SetUpDriver ( driverConfig ) ;
43+ _webDriver = new DriverCreator ( ) . Create ( driverType ) ;
44+ _webDriver . Navigate ( ) . GoToUrl ( "https://www.google.com/ncr" ) ;
45+ Assert . True ( _webDriver . Title . Contains ( "Google" ) ) ;
46+ }
47+
48+ public void Dispose ( )
49+ {
50+ _webDriver . Quit ( ) ;
51+ }
52+ }
53+ }
0 commit comments