public async void Patch_No_Errors()
        {
            ShoppingCartItemControllerMockFacade mock = new ShoppingCartItemControllerMockFacade();
            var mockResult = new Mock <UpdateResponse <ApiShoppingCartItemResponseModel> >();

            mockResult.SetupGet(x => x.Success).Returns(true);
            mock.ServiceMock.Setup(x => x.Update(It.IsAny <int>(), It.IsAny <ApiShoppingCartItemRequestModel>()))
            .Callback <int, ApiShoppingCartItemRequestModel>(
                (id, model) => model.DateCreated.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM"))
                )
            .Returns(Task.FromResult <UpdateResponse <ApiShoppingCartItemResponseModel> >(mockResult.Object));
            mock.ServiceMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult <ApiShoppingCartItemResponseModel>(new ApiShoppingCartItemResponseModel()));
            ShoppingCartItemController controller = new ShoppingCartItemController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, new ApiShoppingCartItemModelMapper());

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            var patch = new JsonPatchDocument <ApiShoppingCartItemRequestModel>();

            patch.Replace(x => x.DateCreated, DateTime.Parse("1/1/1987 12:00:00 AM"));

            IActionResult response = await controller.Patch(default(int), patch);

            response.Should().BeOfType <OkObjectResult>();
            (response as OkObjectResult).StatusCode.Should().Be((int)HttpStatusCode.OK);
            mock.ServiceMock.Verify(x => x.Update(It.IsAny <int>(), It.IsAny <ApiShoppingCartItemRequestModel>()));
        }
    protected bool CheckForItemsInCart()
    {
        ShoppingCartItemController sysmgr = new ShoppingCartItemController();
        bool check = sysmgr.CheckForShoppingCartItems(User.Identity.Name);

        return(check);
    }
        public async void BulkInsert_No_Errors()
        {
            ShoppingCartItemControllerMockFacade mock = new ShoppingCartItemControllerMockFacade();

            var mockResponse = new CreateResponse <ApiShoppingCartItemResponseModel>(new FluentValidation.Results.ValidationResult());

            mockResponse.SetRecord(new ApiShoppingCartItemResponseModel());
            mock.ServiceMock.Setup(x => x.Create(It.IsAny <ApiShoppingCartItemRequestModel>())).Returns(Task.FromResult <CreateResponse <ApiShoppingCartItemResponseModel> >(mockResponse));
            ShoppingCartItemController controller = new ShoppingCartItemController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object);

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            var records = new List <ApiShoppingCartItemRequestModel>();

            records.Add(new ApiShoppingCartItemRequestModel());
            IActionResult response = await controller.BulkInsert(records);

            response.Should().BeOfType <OkObjectResult>();
            (response as OkObjectResult).StatusCode.Should().Be((int)HttpStatusCode.OK);
            var result = (response as OkObjectResult).Value as List <ApiShoppingCartItemResponseModel>;

            result.Should().NotBeEmpty();
            mock.ServiceMock.Verify(x => x.Create(It.IsAny <ApiShoppingCartItemRequestModel>()));
        }
Esempio n. 4
0
        protected void stockList_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            ShoppingCartList.Visible = true;
            totalLabel.Visible       = true;
            TotalbuttonLabel.Visible = true;

            string username = User.Identity.Name;
            int    itemid   = int.Parse(e.CommandArgument.ToString());
            int    employeeid;

            MessageUserControl.TryRun(() =>
            {
                //connect to your BLL
                ApplicationUserManager secmgr = new ApplicationUserManager(new UserStore <ApplicationUser>(new ApplicationDbContext()));
                EmployeeInfo info             = secmgr.User_GetEmployee(username);
                employeeid   = info.EmployeeID;
                int quantity = int.Parse((e.Item.FindControl("QuantityLabel") as TextBox).Text);
                ShoppingCartItemController sysmgr = new ShoppingCartItemController();
                sysmgr.Add_AddToCart(employeeid, itemid, quantity);//Need to put the quantity in the list!!!!!

                List <UserShoppingCartItem> infos = sysmgr.List_ItemsForShoppingCart(employeeid);
                notificationIcon.Style.Remove("visibility");
                //TotalButton.InnerText = (e.Item.FindControl("Total") as Label).ToString();
                ShoppingCartList.DataSource = infos;
                notificationIcon.Value      = infos.Count.ToString();
                ShoppingCartList.DataBind();

                refresh_totallabel();
            }, "Shopping Items Added", $"The item has been addded, you have currently {notificationIcon.Value} items in the shopping cart");
        }
        public async void Get_Not_Exists()
        {
            ShoppingCartItemControllerMockFacade mock = new ShoppingCartItemControllerMockFacade();

            mock.ServiceMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult <ApiShoppingCartItemResponseModel>(null));
            ShoppingCartItemController controller = new ShoppingCartItemController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object);

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            IActionResult response = await controller.Get(default(int));

            response.Should().BeOfType <StatusCodeResult>();
            (response as StatusCodeResult).StatusCode.Should().Be((int)HttpStatusCode.NotFound);
            mock.ServiceMock.Verify(x => x.Get(It.IsAny <int>()));
        }
Esempio n. 6
0
        public void refresh_shoppingcart()
        {
            string username = User.Identity.Name;
            int    employeeid;
            ApplicationUserManager secmgr = new ApplicationUserManager(new UserStore <ApplicationUser>(new ApplicationDbContext()));
            EmployeeInfo           info   = secmgr.User_GetEmployee(username);

            employeeid = info.EmployeeID;

            ShoppingCartItemController  systemmgr = new ShoppingCartItemController();
            List <UserShoppingCartItem> infos     = systemmgr.List_ItemsForShoppingCart(employeeid);

            ShoppingCartList.DataSource = infos;
            ShoppingCartList.DataBind();
            totalLabel.DataBind();
        }
    protected void AddToCartBtn_Click(object sender, EventArgs e)
    {
        LinkButton  linkBtn   = (LinkButton)sender;
        string      username  = User.Identity.Name;
        GridViewRow grdrow    = (GridViewRow)((LinkButton)sender).NamingContainer;
        int         productid = int.Parse(linkBtn.CommandArgument.ToString());
        int         quantity  = int.Parse((grdrow.Cells[2].FindControl("AddQtyValue") as TextBox).Text);

        MessageUserControl.TryRun(() =>
        {
            ShoppingCartItemController sysmgr = new ShoppingCartItemController();
            sysmgr.Add_Product_To_ShoppingCart(username, productid, quantity);
            var loggedInGridview = (GridView)ProductsLoggedIn.FindControl("ProductListByCatLoged");
            loggedInGridview.DataBind();
            DisplayCurrentCartQty();
        }, "Added Product", "Product added to shopping cart!");
    }
        public async void Delete_Errors()
        {
            ShoppingCartItemControllerMockFacade mock = new ShoppingCartItemControllerMockFacade();
            var mockResult = new Mock <ActionResponse>();

            mockResult.SetupGet(x => x.Success).Returns(false);
            mock.ServiceMock.Setup(x => x.Delete(It.IsAny <int>())).Returns(Task.FromResult <ActionResponse>(mockResult.Object));
            ShoppingCartItemController controller = new ShoppingCartItemController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object);

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            IActionResult response = await controller.Delete(default(int));

            response.Should().BeOfType <ObjectResult>();
            (response as ObjectResult).StatusCode.Should().Be((int)HttpStatusCode.UnprocessableEntity);
            mock.ServiceMock.Verify(x => x.Delete(It.IsAny <int>()));
        }
        public async void All_Not_Exists()
        {
            ShoppingCartItemControllerMockFacade mock = new ShoppingCartItemControllerMockFacade();

            mock.ServiceMock.Setup(x => x.All(It.IsAny <int>(), It.IsAny <int>())).Returns(Task.FromResult <List <ApiShoppingCartItemResponseModel> >(new List <ApiShoppingCartItemResponseModel>()));
            ShoppingCartItemController controller = new ShoppingCartItemController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object);

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            IActionResult response = await controller.All(1000, 0);

            response.Should().BeOfType <OkObjectResult>();
            (response as OkObjectResult).StatusCode.Should().Be((int)HttpStatusCode.OK);
            var items = (response as OkObjectResult).Value as List <ApiShoppingCartItemResponseModel>;

            items.Should().BeEmpty();
            mock.ServiceMock.Verify(x => x.All(It.IsAny <int>(), It.IsAny <int>()));
        }
        public async void Update_NotFound()
        {
            ShoppingCartItemControllerMockFacade mock = new ShoppingCartItemControllerMockFacade();
            var mockResult = new Mock <UpdateResponse <ApiShoppingCartItemResponseModel> >();

            mockResult.SetupGet(x => x.Success).Returns(false);
            mock.ServiceMock.Setup(x => x.Update(It.IsAny <int>(), It.IsAny <ApiShoppingCartItemRequestModel>())).Returns(Task.FromResult <UpdateResponse <ApiShoppingCartItemResponseModel> >(mockResult.Object));
            mock.ServiceMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult <ApiShoppingCartItemResponseModel>(null));
            ShoppingCartItemController controller = new ShoppingCartItemController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, new ApiShoppingCartItemModelMapper());

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            IActionResult response = await controller.Update(default(int), new ApiShoppingCartItemRequestModel());

            response.Should().BeOfType <StatusCodeResult>();
            (response as StatusCodeResult).StatusCode.Should().Be((int)HttpStatusCode.NotFound);
            mock.ServiceMock.Verify(x => x.Get(It.IsAny <int>()));
        }
Esempio n. 11
0
        protected void Checkout_Click(object sender, EventArgs e)
        {
            SaleList.Visible          = true;
            totalLabel2.Visible       = true;
            TaxLabel.Visible          = true;
            subtotalLabel.Visible     = true;
            CouponTextBox.Visible     = true;
            DiscountLabel.Visible     = true;
            CheckCouponButton.Visible = true;
            Label2.Visible            = true;
            Label3.Visible            = true;
            Label6.Visible            = true;
            Label4.Visible            = true;
            Label8.Visible            = true;
            PaymentTypeDDL.Visible    = true;

            string username = User.Identity.Name;
            int    employeeid;

            if (ShoppingCartList.Items.Count == 0)
            {
                MessageUserControl.ShowInfo("Warning", "No items in current shopping cart");
            }
            else
            {
                MessageUserControl.TryRun(() =>
                {
                    ApplicationUserManager secmgr = new ApplicationUserManager(new UserStore <ApplicationUser>(new ApplicationDbContext()));
                    EmployeeInfo info             = secmgr.User_GetEmployee(username);
                    employeeid = info.EmployeeID;
                    ShoppingCartItemController sysmgr = new ShoppingCartItemController();
                    List <UserShoppingCartItem> infos = sysmgr.List_ItemsForShoppingCart(employeeid);
                    if (infos.Count == 0)
                    {
                        MessageUserControl.ShowInfo("Warning", "No items in current shopping cart");
                    }
                    SaleList.DataSource = infos;
                    SaleList.DataBind();
                }, "Great", "Here is your chekout info");
                checkout_details();
            }
        }
        protected void UpdateCartItem_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            int    shoppingCartItemID = int.Parse(e.CommandArgument.ToString());
            string itemDescription    = (e.Item.FindControl("DescriptionLabel") as Label).Text;

            if ((e.Item.FindControl("DeleteCheckBox") as CheckBox).Checked)
            {
                MessageUserControl.TryRun(() =>
                {
                    ShoppingCartItemController sysmgr = new ShoppingCartItemController();
                    sysmgr.Delete_ShoppingCartItem(shoppingCartItemID);
                    CartListView.DataBind();
                }, "Item Deleted", itemDescription + " has been removed from your shopping cart.");
            }
            else
            {
                int    qty = 0;
                bool   quantityInputFail = false;
                string inputQty          = (e.Item.FindControl("QuantitySelectedLabel") as TextBox).Text;
                if (!(int.TryParse(inputQty, out qty)))
                {
                    quantityInputFail = true;
                }
                if (quantityInputFail)
                {
                    MessageUserControl.ShowInfo("Could not update item quantity. Quantity must be a valid integer.");
                }
                else
                {
                    MessageUserControl.TryRun(() =>
                    {
                        ShoppingCartItemController sysmgr = new ShoppingCartItemController();
                        ShoppingCartItem item             = sysmgr.Get_ShoppingCartItem(shoppingCartItemID);
                        item.Quantity = qty;
                        sysmgr.Update_ShoppingCartItem(item);
                        CartListView.DataBind();
                    }, "Item Quantity Updated", itemDescription + " has had its quantity updated.");
                }
            }
            MainView.ActiveViewIndex = 1;
        }
        public async void Patch_Record_Not_Found()
        {
            ShoppingCartItemControllerMockFacade mock = new ShoppingCartItemControllerMockFacade();
            var mockResult = new Mock <ActionResponse>();

            mock.ServiceMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult <ApiShoppingCartItemResponseModel>(null));
            ShoppingCartItemController controller = new ShoppingCartItemController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object);

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            var patch = new JsonPatchDocument <ApiShoppingCartItemRequestModel>();

            patch.Replace(x => x.DateCreated, DateTime.Parse("1/1/1987 12:00:00 AM"));

            IActionResult response = await controller.Patch(default(int), patch);

            response.Should().BeOfType <StatusCodeResult>();
            (response as StatusCodeResult).StatusCode.Should().Be((int)HttpStatusCode.NotFound);
            mock.ServiceMock.Verify(x => x.Get(It.IsAny <int>()));
        }
Esempio n. 14
0
        protected void PlaceOrder_Click(object sender, EventArgs e)
        {
            List <SaleDetailsList> listsaledetails = new List <SaleDetailsList>();
            List <ListSale>        listsales       = new List <ListSale>();
            string username = User.Identity.Name;
            int    employeeid;

            if (SaleList.Items.Count == 0)
            {
                MessageUserControl.ShowInfo("Warning", "Please add at least one product in order to place order.");
            }
            else
            {
                if (PaymentTypeDDL.SelectedIndex == 0)
                {
                    MessageUserControl.ShowInfo("Warning", "Please select a payment method to place order.");
                }
                else
                {
                    MessageUserControl.TryRun(() =>
                    {
                        ApplicationUserManager secmgr = new ApplicationUserManager(new UserStore <ApplicationUser>(new ApplicationDbContext()));
                        EmployeeInfo info             = secmgr.User_GetEmployee(username);
                        employeeid = info.EmployeeID;

                        foreach (ListViewItem item in SaleList.Items)
                        {
                            Label quantityLabel     = item.FindControl("QuantityLabel") as Label;
                            Label priceLabel        = item.FindControl("PriceLabel") as Label;
                            HiddenField itemIDLabel = item.FindControl("StockItemIDLabel") as HiddenField;
                            Label descriptionLabel  = item.FindControl("DescriptionLabel") as Label;

                            SaleDetailsList newSaleDetailsList = new SaleDetailsList();
                            newSaleDetailsList.Description     = descriptionLabel.Text;
                            newSaleDetailsList.Price           = decimal.Parse(priceLabel.Text.Replace(@"$", string.Empty));
                            newSaleDetailsList.Quantity        = int.Parse(quantityLabel.Text);
                            newSaleDetailsList.StockItemID     = int.Parse(itemIDLabel.Value);
                            listsaledetails.Add(newSaleDetailsList);
                        }

                        Label SubtotalLabel    = (Label)UpdatePanel3.FindControl("totalLabel2") as Label;
                        Label taxLabel         = (Label)UpdatePanel3.FindControl("TaxLabel") as Label;
                        CouponController cpmgr = new CouponController();
                        Coupon coupon          = cpmgr.Coupons_Get(CouponTextBox.Text);

                        ListSale newSaleList    = new ListSale();
                        newSaleList.PaymentType = PaymentTypeDDL.SelectedItem.ToString();
                        newSaleList.CouponID    = coupon == null ? null : coupon.CouponID;
                        newSaleList.SubTotal    = decimal.Parse(SubtotalLabel.Text.Replace(@"$", string.Empty));
                        newSaleList.TaxAmount   = decimal.Parse(taxLabel.Text.Replace(@"$", string.Empty));
                        listsales.Add(newSaleList);

                        SaleDetailController sysmgr = new SaleDetailController();
                        sysmgr.Add_AddToSale(employeeid, listsales, listsaledetails);

                        foreach (ListViewItem item in SaleList.Items)
                        {
                            HiddenField itemidLabel = item.FindControl("ItemIDLabel") as HiddenField;
                            int itemid = int.Parse(itemidLabel.Value);
                            ShoppingCartItemController spcitemmgr = new ShoppingCartItemController();
                            spcitemmgr.DeleteShoppingItems(employeeid, itemid);
                        }

                        ShoppingCartController spcmgr = new ShoppingCartController();
                        spcmgr.DeleteShoppingCart(employeeid);

                        //refresh the table
                        ShoppingCartItemController systemmgr = new ShoppingCartItemController();
                        List <UserShoppingCartItem> infos    = systemmgr.List_ItemsForShoppingCart(employeeid);
                        ShoppingCartList.DataSource          = infos;
                        ShoppingCartList.DataBind();

                        subtotalLabel.Text           = "$" + "0";
                        TaxLabel.Text                = "$" + "0";
                        CouponTextBox.Text           = "";
                        DiscountLabel.Text           = "$" + "0";
                        totalLabel2.Text             = "$" + "0";
                        PaymentTypeDDL.SelectedIndex = 0;
                    }, "Success", "Order has been placed");
                }
            }
        }
Esempio n. 15
0
        protected void ShoppingCartList_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            if (e.CommandName == "remove")
            {
                string username = User.Identity.Name;
                int    itemid   = int.Parse(e.CommandArgument.ToString());
                int    employeeid;

                if (ShoppingCartList.Items.Count == 0)
                {
                    MessageUserControl.ShowInfo("Warning", "You have clear the shopping cart.");
                }
                else
                {
                    MessageUserControl.TryRun(() =>
                    {
                        ApplicationUserManager secmgr = new ApplicationUserManager(new UserStore <ApplicationUser>(new ApplicationDbContext()));
                        EmployeeInfo info             = secmgr.User_GetEmployee(username);
                        employeeid = info.EmployeeID;
                        ShoppingCartItemController sysmgr = new ShoppingCartItemController();
                        sysmgr.DeleteShoppingItems(employeeid, itemid);

                        List <UserShoppingCartItem> infos = sysmgr.List_ItemsForShoppingCart(employeeid);
                        ShoppingCartList.DataSource       = infos;
                        notificationIcon.Value            = infos.Count.ToString();
                        ShoppingCartList.DataBind();
                        totalLabel.DataBind();

                        refresh_totallabel();
                    }, "Removed", $"Item(s) {itemid} have been removed");
                }
            }
            else if (e.CommandName == "refresh")
            {
                string username = User.Identity.Name;
                int    itemid   = int.Parse(e.CommandArgument.ToString());
                int    employeeid;
                int    quantity = int.Parse((e.Item.FindControl("QuantityLabel") as TextBox).Text);

                MessageUserControl.TryRun(() =>
                {
                    ApplicationUserManager secmgr = new ApplicationUserManager(new UserStore <ApplicationUser>(new ApplicationDbContext()));
                    EmployeeInfo info             = secmgr.User_GetEmployee(username);
                    employeeid = info.EmployeeID;
                    ShoppingCartItemController sysmgr = new ShoppingCartItemController();
                    sysmgr.Update_RefreshCart(employeeid, itemid, quantity);

                    List <UserShoppingCartItem> infos = sysmgr.List_ItemsForShoppingCart(employeeid);
                    ShoppingCartList.DataSource       = infos;
                    notificationIcon.Value            = infos.Count.ToString();
                    ShoppingCartList.DataBind();
                    totalLabel.DataBind();

                    refresh_totallabel();
                }, "Updated", $"Item(s) {itemid} have been updated");
            }
            else
            {
                MessageUserControl.ShowInfo("Glad you found this error, cauz I don't even know what should I call this error.");
            }
        }
Esempio n. 16
0
 public ShoppingCartItemControllerTest()
 {
     _shoppingCartItemService = new Mock <IShoppingCartItemService>();
     _logger     = new Mock <ILogger <ShoppingCartItemController> >();
     _controller = new ShoppingCartItemController(_shoppingCartItemService.Object, _logger.Object);
 }