Example code
This commit is contained in:
20
pom/Components/LandingComponent.cs
Normal file
20
pom/Components/LandingComponent.cs
Normal file
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using OpenQA.Selenium;
|
||||
using OpenQA.Selenium.Support.UI;
|
||||
|
||||
namespace pom.Components
|
||||
{
|
||||
public class LandingComponent
|
||||
{
|
||||
private IWebDriver webDriver;
|
||||
private WebDriverWait webDriverWait;
|
||||
private IJavaScriptExecutor jsExecutor;
|
||||
|
||||
public LandingComponent(IWebDriver _webDriver)
|
||||
{
|
||||
webDriver = _webDriver;
|
||||
webDriverWait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(30));
|
||||
jsExecutor = (IJavaScriptExecutor)webDriver;
|
||||
}
|
||||
}
|
||||
}
|
||||
36
pom/Components/LoginComponent.cs
Normal file
36
pom/Components/LoginComponent.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
using OpenQA.Selenium;
|
||||
using OpenQA.Selenium.Support.UI;
|
||||
|
||||
namespace pom.Components
|
||||
{
|
||||
public class LoginComponent
|
||||
{
|
||||
private IWebDriver webDriver;
|
||||
private WebDriverWait webDriverWait;
|
||||
private IJavaScriptExecutor jsExecutor;
|
||||
|
||||
public LoginComponent(IWebDriver _webDriver)
|
||||
{
|
||||
webDriver = _webDriver;
|
||||
webDriverWait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(30));
|
||||
jsExecutor = (IJavaScriptExecutor)webDriver;
|
||||
}
|
||||
|
||||
public void GoToLogin()
|
||||
{
|
||||
webDriver.Navigate().GoToUrl("Some Site");
|
||||
}
|
||||
|
||||
public void EnterUserCredentials(string username, string password)
|
||||
{
|
||||
webDriver.FindElement(By.Name("username")).SendKeys(username);
|
||||
webDriver.FindElement(By.Name("password")).SendKeys(password);
|
||||
}
|
||||
|
||||
public void SubmitLoginForm()
|
||||
{
|
||||
webDriver.FindElement(By.Name("login")).Click();
|
||||
}
|
||||
}
|
||||
}
|
||||
32
pom/Components/NavigationComponent.cs
Normal file
32
pom/Components/NavigationComponent.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using OpenQA.Selenium;
|
||||
using OpenQA.Selenium.Support.UI;
|
||||
|
||||
namespace pom.Components
|
||||
{
|
||||
public class NavigationComponent
|
||||
{
|
||||
private IWebDriver webDriver;
|
||||
private WebDriverWait webDriverWait;
|
||||
|
||||
public NavigationComponent(IWebDriver _webDriver)
|
||||
{
|
||||
webDriver = _webDriver;
|
||||
webDriverWait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(30));
|
||||
}
|
||||
|
||||
public string GetNavAccountName()
|
||||
{
|
||||
//Example of getting an account name
|
||||
var accountNav = webDriver.FindElement(By.Id("account-nav")).FindElements(By.TagName("span"))[1];
|
||||
string accountNavName = accountNav.GetAttribute("innerHTML");
|
||||
|
||||
return (accountNavName);
|
||||
}
|
||||
|
||||
public void GoToVideos()
|
||||
{
|
||||
//Goes to videos page
|
||||
}
|
||||
}
|
||||
}
|
||||
37
pom/Components/VideoComponent.cs
Normal file
37
pom/Components/VideoComponent.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using OpenQA.Selenium;
|
||||
using OpenQA.Selenium.Support.UI;
|
||||
|
||||
namespace pom.Components
|
||||
{
|
||||
public class VideoComponent
|
||||
{
|
||||
private IWebDriver webDriver;
|
||||
private WebDriverWait webDriverWait;
|
||||
private IJavaScriptExecutor jsExecutor;
|
||||
|
||||
public VideoComponent(IWebDriver _webDriver)
|
||||
{
|
||||
webDriver = _webDriver;
|
||||
webDriverWait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(30));
|
||||
jsExecutor = (IJavaScriptExecutor)webDriver;
|
||||
}
|
||||
|
||||
public void PlayVideo()
|
||||
{
|
||||
//Plays Video
|
||||
}
|
||||
|
||||
public void PauseVideo()
|
||||
{
|
||||
//Pauses Video
|
||||
}
|
||||
|
||||
public bool GetVideoPlayState()
|
||||
{
|
||||
//Get video play sate from player
|
||||
return (false);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
29
pom/Components/VideosComponent.cs
Normal file
29
pom/Components/VideosComponent.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using OpenQA.Selenium;
|
||||
using OpenQA.Selenium.Support.UI;
|
||||
|
||||
namespace pom.Components
|
||||
{
|
||||
public class VideosComponent
|
||||
{
|
||||
private IWebDriver webDriver;
|
||||
private WebDriverWait webDriverWait;
|
||||
private IJavaScriptExecutor jsExecutor;
|
||||
|
||||
public VideosComponent(IWebDriver _webDriver)
|
||||
{
|
||||
webDriver = _webDriver;
|
||||
webDriverWait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(30));
|
||||
jsExecutor = (IJavaScriptExecutor)webDriver;
|
||||
}
|
||||
|
||||
public void SelectVideo()
|
||||
{
|
||||
webDriverWait.Until(drv => drv.FindElement(By.ClassName("video-loop-video-title")));
|
||||
|
||||
var videos = webDriver.FindElements(By.ClassName("video-loop-video-title"));
|
||||
var video = videos[0];
|
||||
video.Click();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user