public override void BeforeTest()
        {
            DatabaseAction.PopulateTrashboxDatabase();

            _loginPage    = new LoginPage(Driver);
            _menuPage     = new Menu(Driver);
            _trashBoxPage = new TrashBoxPage(Driver);
            _receiptPage  = new ReceiptPage(Driver);
        }
Example #2
0
        public void SuccessfulSignUp()
        {
            SignupPage signupPage = new SignupPage(Driver);

            ReceiptPage receiptPage = signupPage.SingupAs("primer", "nombre", "calle 123", "789");

            //Assert where the expected result is that the user can singup successfuly
            Assert.IsTrue(receiptPage.SignupHeaderIsPresent());
        }
Example #3
0
        public override void BeforeTest()
        {
            DatabaseAction.PopulateReceiptDatabase();

            _menuPage             = new Menu(Driver);
            _receiptPage          = new ReceiptPage(Driver);
            _createExpensePage    = new CreateExpensePage(Driver);
            _loginPage            = new LoginPage(Driver);
            _awaitingApprovalPage = new AwaitingApprovalPage(Driver);
        }
        public void GivenIMLoggedInAsAUser()
        {
            _driver            = new ChromeDriver();
            _createExpensePage = new CreateExpensePage(_driver);
            _receiptPage       = new ReceiptPage(_driver);
            _mainPage          = new MainPage(_driver);

            _driver.Manage().Window.Maximize();
            _driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(5));
        }
Example #5
0
        public ActionResult Index()
        {
            ReceiptPage receiptPage = _contentRepository.Get <ReceiptPage>(_siteConfiguration.Settings.ReceiptPage);

            CartHelper     cartHelper     = new CartHelper(Cart.DefaultName);
            string         message        = "";
            OrderViewModel orderViewModel = null;

            if (cartHelper.Cart.OrderForms.Count > 0)
            {
                var orderNumber = cartHelper.Cart.GeneratePredictableOrderNumber();

                _log.Debug("Order placed - order number: " + orderNumber);

                cartHelper.Cart.OrderNumberMethod = CartExtensions.GeneratePredictableOrderNumber;

                var results = OrderGroupWorkflowManager.RunWorkflow(cartHelper.Cart, OrderGroupWorkflowManager.CartCheckOutWorkflowName);
                message = string.Join(", ", OrderGroupWorkflowManager.GetWarningsFromWorkflowResult(results));

                if (message.Length == 0)
                {
                    cartHelper.Cart.SaveAsPurchaseOrder();
                    cartHelper.Cart.Delete();
                    cartHelper.Cart.AcceptChanges();
                }

                var order = _orderRepository.GetOrderByTrackingNumber(orderNumber);

                // Must be run after order is complete,
                // This will release the order for shipment and
                // send the order receipt by email
                OnPaymentComplete(order);

                orderViewModel = new OrderViewModel(order);
            }

            ReceiptViewModel model = new ReceiptViewModel(receiptPage);

            model.CheckoutMessage = message;
            model.Order           = orderViewModel;

            // Track successfull order in Google Analytics
            TrackAfterPayment(model);

            return(View("ReceiptPage", model));
        }
Example #6
0
        public ActionResult ProcessPayment(DibsPaymentPage currentPage, DibsPaymentResult result)
        {
            ReceiptPage receiptPage = _contentRepository.Get <ReceiptPage>(_siteConfiguration.GetSettings().ReceiptPage);

            if (_log.IsDebugEnabled())
            {
                _log.Debug("Payment processed: {0}", result);
            }

            CartHelper     cartHelper     = new CartHelper(Cart.DefaultName);
            string         message        = "";
            OrderViewModel orderViewModel = null;

            if (cartHelper.Cart.OrderForms.Count > 0)
            {
                var payment = cartHelper.Cart.OrderForms[0].Payments[0] as DibsPayment;

                if (payment != null)
                {
                    payment.CardNumberMasked = result.CardNumberMasked;
                    payment.CartTypeName     = result.CardTypeName;
                    payment.TransactionID    = result.Transaction;
                    payment.TransactionType  = TransactionType.Authorization.ToString();
                    payment.Status           = result.Status;
                    cartHelper.Cart.Status   = DIBSPaymentGateway.PaymentCompleted;
                }
                else
                {
                    throw new Exception("Not a DIBS Payment");
                }

                var orderNumber = cartHelper.Cart.GeneratePredictableOrderNumber();

                _log.Debug("Order placed - order number: " + orderNumber);

                cartHelper.Cart.OrderNumberMethod = CartExtensions.GeneratePredictableOrderNumber;

                var results = OrderGroupWorkflowManager.RunWorkflow(cartHelper.Cart, OrderGroupWorkflowManager.CartCheckOutWorkflowName);
                message = string.Join(", ", OrderGroupWorkflowManager.GetWarningsFromWorkflowResult(results));

                if (message.Length == 0)
                {
                    cartHelper.Cart.SaveAsPurchaseOrder();
                    cartHelper.Cart.Delete();
                    cartHelper.Cart.AcceptChanges();
                }

                var order = _orderService.GetOrderByTrackingNumber(orderNumber);

                // Must be run after order is complete,
                // This will release the order for shipment and
                // send the order receipt by email
                _paymentCompleteHandler.ProcessCompletedPayment(order, User.Identity);

                orderViewModel = new OrderViewModel(_currentMarket.GetCurrentMarket().DefaultCurrency.Format, order);
            }

            ReceiptViewModel model = new ReceiptViewModel(receiptPage);

            model.CheckoutMessage = message;
            model.Order           = orderViewModel;

            // Track successfull order in Google Analytics
            TrackAfterPayment(model);

            return(View("ReceiptPage", model));
        }