Exemple #1
0
        /// <summary>
        /// Pays for tickets in the cart (offline or internal balance). To use this method you must be on the sales panel page
        /// </summary>
        /// <param name="merchant"></param>
        /// <param name="ifProcess"></param>
        /// <param name="isFailed"></param>
        public double PayForTicketsInCart_SalesPanel(WayToPay merchant, bool ifProcess = true, bool isFailed = false)
        {
            TestFramework.BackEndObj.SalesPanelPages.CartObj cart = new TestFramework.BackEndObj.SalesPanelPages.CartObj(_driver);
            double totalPrice = cart.TotalPrice;

            if (merchant == WayToPay.Offline)
            {
                AddCCDetails_SalesPanel();

                cart.Charge();

                if (ifProcess)
                {
                    _driverCover.NavigateToUrl(_driverCover.BaseAdminUrl + "admin/charge_panel_manager");
                    ChargePanelObj chargePanel = new ChargePanelObj(_driver);
                    chargePanel.ChargeTheLastPayment();
                    ChargeFormObj chargeForm = new ChargeFormObj(_driver);

                    if (!isFailed)
                    {
                        chargeForm.MakeTransactionSucceed();
                    }
                    else
                    {
                        chargeForm.MakeTransactionFailed();
                    }

                    chargeForm.UpdateTransaction();
                }
            }

            if (merchant == WayToPay.InternalBalance)
            {
                cart.PayWithInternalBalance();
            }

            return totalPrice;
        }