public static void fnVerifyProductAdded()
 {
     try
     {
         fnWaitForPageLoading();
         TshirtsPage shirtsPage = new TshirtsPage();
         fnWaitForElement(shirtsPage.ProductAdded);
         Assert.IsNotNull(shirtsPage.ProductAdded);
     }
     catch (Exception e)
     {
         fnCloseBrowser();
         throw new SystemException("Unable to find Element " + e.Message);
     }
 }
 public static void fnHoverMouse()
 {
     try
     {
         fnWaitForPageLoading();
         TshirtsPage shirtsPage = new TshirtsPage();
         fnWaitForElement(shirtsPage.ProductView);
         Actions action = new Actions(driver);
         action.MoveToElement(shirtsPage.ProductView).Perform();
     }
     catch (Exception e)
     {
         fnCloseBrowser();
         throw new SystemException("Unable to find Element " + e.Message);
     }
 }
 public static void fnClickOnLink(string strLink)
 {
     try
     {
         fnWaitForPageLoading();
         TshirtsPage           shirtsPage            = new TshirtsPage();
         ShoppingCart          cartPage              = new ShoppingCart();
         AddressPage           addressPage           = new AddressPage();
         ShippingPage          shippingPage          = new ShippingPage();
         PaymentPage           paymentPage           = new PaymentPage();
         OrderConfirmationPage orderConfirmationPage = new OrderConfirmationPage();
         PersonalInfoPage      personalInfo          = new PersonalInfoPage();
         MyAcctPage            myAcctPage            = new MyAcctPage();
         if (strLink.ToLower().Contains("shirts"))
         {
             fnWaitForElement(shirtsPage.lnkTShirt);
             shirtsPage.lnkTShirt.Click();
         }
         else if (strLink.ToLower().Contains("cart"))
         {
             fnWaitForElement(shirtsPage.lnkAddToCart);
             shirtsPage.lnkAddToCart.Click();
         }
         else if (strLink.ToLower().Contains("proceed"))
         {
             fnWaitForElement(shirtsPage.lnkCheckout);
             shirtsPage.lnkCheckout.Click();
         }
         else if (strLink.ToLower().Contains("standard"))
         {
             fnWaitForElement(cartPage.lnkStandardCheckout);
             cartPage.lnkStandardCheckout.Click();
         }
         else if (strLink.ToLower().Contains("address"))
         {
             fnWaitForElement(addressPage.lnkCheckout);
             addressPage.lnkCheckout.Click();
         }
         else if (strLink.ToLower().Contains("agree terms"))
         {
             fnWaitForElement(shippingPage.lnkAgreeTerms);
             shippingPage.lnkAgreeTerms.Click();
         }
         else if (strLink.ToLower().Contains("shipping"))
         {
             fnWaitForElement(shippingPage.lnkProceedShipping);
             shippingPage.lnkProceedShipping.Click();
         }
         else if (strLink.ToLower().Contains("bank wire"))
         {
             fnWaitForElement(paymentPage.lnkBankWire);
             paymentPage.lnkBankWire.Click();
         }
         else if (strLink.ToLower().Contains("confirm order"))
         {
             fnWaitForElement(paymentPage.lnkConfirmOrder);
             paymentPage.lnkConfirmOrder.Click();
         }
         else if (strLink.ToLower().Contains("back to orders"))
         {
             fnWaitForElement(orderConfirmationPage.lnkBckToOrders);
             orderConfirmationPage.lnkBckToOrders.Click();
         }
         else if (strLink.ToLower().Contains("personal information"))
         {
             fnWaitForElement(myAcctPage.lnkPersonalInfo);
             myAcctPage.lnkPersonalInfo.Click();
         }
         else if (strLink.ToLower().Contains("save"))
         {
             fnWaitForElement(personalInfo.btnSave);
             personalInfo.btnSave.Click();
         }
     }
     catch (Exception e)
     {
         fnCloseBrowser();
         throw new SystemException("Unable to find Element " + e.Message);
     }
 }