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>())); }
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>())); }
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>())); }
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>())); }
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"); } } }
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."); } }
public ShoppingCartItemControllerTest() { _shoppingCartItemService = new Mock <IShoppingCartItemService>(); _logger = new Mock <ILogger <ShoppingCartItemController> >(); _controller = new ShoppingCartItemController(_shoppingCartItemService.Object, _logger.Object); }