Skip to content

Instantly share code, notes, and snippets.

@angelovstanton
Created July 9, 2015 20:46
Show Gist options
  • Save angelovstanton/4373da96bef1f71aa5f0 to your computer and use it in GitHub Desktop.
Save angelovstanton/4373da96bef1f71aa5f0 to your computer and use it in GitHub Desktop.
public class PurchaseFacade
{
public void PurchaseItemSalesTax(string itemUrl, string itemPrice, string taxAmount, ClientLoginInfo clientLoginInfo, ClientPurchaseInfo clientPurchaseInfo)
{
PurchaseItemInternal(itemUrl, clientLoginInfo, clientPurchaseInfo);
PlaceOrderPage.Instance.Validate().EstimatedTaxPrice(taxAmount);
}
public void PurchaseItemGiftWrapping(string itemUrl, string itemPrice, string giftWrapTax, ClientLoginInfo clientLoginInfo, ClientPurchaseInfo clientPurchaseInfo)
{
PurchaseItemInternal(itemUrl, clientLoginInfo, clientPurchaseInfo);
PlaceOrderPage.Instance.Validate().GiftWrapPrice(giftWrapTax);
}
public void PurchaseItemShippingTax(string itemUrl, string itemPrice, string shippingTax, ClientLoginInfo clientLoginInfo, ClientPurchaseInfo clientPurchaseInfo)
{
PurchaseItemInternal(itemUrl, clientLoginInfo, clientPurchaseInfo);
PlaceOrderPage.Instance.Validate().ShippingTaxPrice(shippingTax);
}
private void PurchaseItemInternal(string itemUrl, ClientLoginInfo clientLoginInfo, ClientPurchaseInfo clientPurchaseInfo)
{
ItemPage.Instance.Navigate(itemUrl);
ItemPage.Instance.ClickBuyNowButton();
PreviewShoppingCartPage.Instance.ClickProceedToCheckoutButton();
SignInPage.Instance.Login(clientLoginInfo.Email, clientLoginInfo.Password);
ShippingAddressPage.Instance.FillShippingInfo(clientPurchaseInfo);
ShippingAddressPage.Instance.ClickContinueButton();
ShippingPaymentPage.Instance.ClickBottomContinueButton();
ShippingPaymentPage.Instance.ClickTopContinueButton();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment