public void CreateAnAccountTest()
        {
            var homePage = new HomePageContactUsPageUnitTests(driver);

            homePage.VerifyHomePageLoadTest();
            SignInPageCreateAnAccountForm();
        }
        public void CreateAnAccountYourAdddressSectionTest()
        {
            var homePage = new HomePageContactUsPageUnitTests(driver);

            homePage.VerifyHomePageLoadTest();
            SignInPageCreateAnAccountForm();
            SignInPageYourAddressForm();
        }/// <summary>
        public void MyAccountPageTest()
        {
            var homePage   = new HomePageContactUsPageUnitTests(driver);
            var signInPage = new HomePageSignInPO(driver);

            homePage.VerifyHomePageLoadTest();
            signInPage.SignInLink.Click();
            wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));

            wait.Until(e => signInPage.SignInPageContainer.Displayed);
            Assert.IsNotNull(signInPage.SignInPageContainer, $"{nameof(signInPage.SignInPageContainer)} returned as null");
        }
        public void AlreadyRegisteredSectionTest()
        {
            var homePage   = new HomePageContactUsPageUnitTests(driver);
            var signInPage = new HomePageSignInPO(driver);

            homePage.VerifyHomePageLoadTest();
            signInPage.SignInLink.Click();
            wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));

            wait.Until(e => signInPage.SignInPageContainer.Displayed);
            Assert.IsNotNull(signInPage.SignInPageContainer, $"{nameof(signInPage.SignInPageContainer)} returned as null");

            if (signInPage.AlreadyRegisteredSubHeading != null && signInPage.AlreadyRegisteredSubHeading.Displayed)
            {
                Assert.IsTrue(signInPage.AlreadyRegisteredSubHeading.Text.Equals("ALREADY REGISTERED?"),
                              $"Subheading 'ALREADY REGISTERED?' was not displayed, instead {signInPage.AlreadyRegisteredSubHeading.Text} displayed.");
            }
            bool v = false;
            Func <IWebElement, IWebElement, bool> isLableDisplayed = (e, e1) =>
            {
                v = (e != null && e.Displayed) && (e1 != null && e1.Displayed);
                return(v);
            };

            isLableDisplayed(signInPage.RegisteredEmailAddressLabel, signInPage.RegisteredPasswordLabel);
            signInPage.RegisteredEmailAddressInput.SendKeys("*****@*****.**");
            signInPage.RegisteredPasswordInput.SendKeys("12345");
            signInPage.SignInButton.Click();

            wait.Until(e => signInPage.MyAccountHeading != null && signInPage.MyAccountHeading.Displayed);
            Assert.IsTrue(signInPage.InfoAccount.Text.Equals("Welcome to your account. Here you can manage all of your personal information and orders."),
                          $"{signInPage.InfoAccount.Text} was not displayed.");

            List <IWebElement> LinkList = new List <IWebElement>()
            {
                signInPage.OrdersLink, signInPage.MyAddressesLink,
                signInPage.MyCreditSlipsLink, signInPage.MyPersonalInfoLink, signInPage.MyWishListsLink
            };

            IsEachElementDisplayed(LinkList);
        }