Exemple #1
0
        public void Category_filter()
        {
            Mock <ICakeRepository> mock = new Mock <ICakeRepository>();

            mock.Setup(m => m.Cakes).Returns(new List <Cake>
            {
                new Cake {
                    Id = 1, Category = "Category1", Name = "Cake1"
                },
                new Cake {
                    Id = 2, Category = "Category2", Name = "Cake2"
                },
                new Cake {
                    Id = 3, Category = "Category2", Name = "Cake3"
                },
                new Cake {
                    Id = 4, Category = "Category3", Name = "Cake4"
                },
                new Cake {
                    Id = 5, Category = "Category1", Name = "Cake5"
                },
            });
            CakeController controller = new CakeController(mock.Object);

            controller.pageSize = 3;

            //Action
            List <Cake> result = ((CakeListView)controller.List("Category1", 1).Model)
                                 .Cakes.ToList();

            Assert.AreEqual(result.Count(), 2);
            Assert.IsTrue(result[0].Category == "Category1" && result[0].Name == "Cake1");
            Assert.IsTrue(result[1].Category == "Category1" && result[1].Name == "Cake5");
        }
        public void CakeOfTheWeek_ReturnsIEnumerableCake_False()
        {
            //Arrange
            var newCake = new List <Cake>
            {
                new Cake
                {
                    Id       = 1,
                    Name     = "Royal Cake",
                    Category = new Category {
                        Id = 1, Name = "CiocolateCake"
                    },
                    Description     = "Best cake",
                    ImageUrl        = "/img/img1.jpg",
                    IsCakeOfTheWeek = true,
                    Price           = 12,
                    Stock           = 10,
                    Weigth          = "100"
                }
            };
            var cakeState             = false;
            var mockRepositoryWrapper = new Mock <IRepositoryWrapper>();

            mockRepositoryWrapper.Setup(repo => repo.Cake.GetCakeByIsCakeOfTheWeek(cakeState));
            var controller = new CakeController(mockRepositoryWrapper.Object);

            //Act
            var result = controller.CakeOfTheWeek(cakeState);

            //Assert
            Assert.Null(result.Result);
        }
        public void CakeDetail_ReturnsCake_Success()
        {
            //Arrange
            var newCake = new Cake
            {
                Id       = 1,
                Name     = "Royal Cake",
                Category = new Category {
                    Id = 1, Name = "Cake"
                },
                Description     = "Best cake",
                ImageUrl        = "/img/img1.jpg",
                IsCakeOfTheWeek = true,
                Price           = 12,
                Stock           = 10,
                Weigth          = "100"
            };
            var mockRepositoryWrapper = new Mock <IRepositoryWrapper>();

            mockRepositoryWrapper.Setup(repo => repo.Cake.GetByIdAsync(newCake.Id)).
            Returns(Task.FromResult(newCake));
            var controller = new CakeController(mockRepositoryWrapper.Object);

            //Act
            var result = controller.CakeDetail(newCake.Id);

            //Assert
            var cakeResult = Assert.IsAssignableFrom <Cake>(result.Result);

            Assert.Equal(newCake, result.Result);
            Assert.NotNull(result.Result);
        }
        void loadCake(String cakeName)
        {
            Cake c = CakeController.get(cakeName);

            lblCakeName.Text = c.CakeName;
            lblCakePrice.Text = c.Price.ToString();
        }
Exemple #5
0
        public void Setup()
        {
            _CakeRepository      = new Mock <ICakeRepository>();
            _CategoryRepository  = new Mock <ICategoryRepository>();
            _IWebHostEnvironment = new Mock <IWebHostEnvironment>();

            _CakeController = new CakeController(_CakeRepository.Object, _CategoryRepository.Object, _IWebHostEnvironment.Object);
        }
Exemple #6
0
 void Awake()
 {
     if (Inst != null)
     {
         throw new System.Exception("Duplicate instance of singleton CakeController");
     }
     Inst = this;
 }
        public void CanDeleteCake()
        {
            var repo = Substitute.For <ICakeRepository>();
            var id   = Guid.NewGuid();

            repo.Delete(id).Returns(true);

            var controller = new CakeController(repo);

            repo.GetById(id).Returns(new Cake {
                Id = id, Name = "Test cake", Added = DateTime.UtcNow
            });
            controller.Delete(id);
            repo.Received().Delete(id);
        }
        public void CanAddCake()
        {
            var repo = Substitute.For <ICakeRepository>();

            repo.Add(new Cake()).ReturnsForAnyArgs(true);
            repo.Update(new Cake()).ReturnsForAnyArgs(false);

            var controller = new CakeController(repo);
            var id         = Guid.NewGuid();

            Assert.IsTrue(controller.Put(id, new Cake {
                Id = id, Name = "Test cake", Added = DateTime.UtcNow
            }));
            repo.Received().Add(Arg.Any <Cake>());
        }
        public void CanUpdateCake()
        {
            var repo = Substitute.For <ICakeRepository>();

            repo.Update(new Cake()).ReturnsForAnyArgs(true);

            var controller = new CakeController(repo);
            var id         = Guid.NewGuid();

            repo.GetById(id).Returns(new Cake {
                Id = id, Name = "Test cake", Added = DateTime.UtcNow
            });
            controller.Put(id, new Cake {
                Id = id, Name = "Test cake update", Added = DateTime.UtcNow
            });
            repo.Received().Update(Arg.Any <Cake>());
        }
Exemple #10
0
        protected void ViewAllCake_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            Member currUser = (Member)Session["userLogin"];

            if (currUser.Type == "Customer")
            {
                lblError.Text = "You're not an admin!";
            }

            else
            {
                String Cake_Name = ViewAllCakeAdmin.Rows[e.RowIndex].Cells[0].Text;

                Cake c   = CakeController.get(Cake_Name);
                int  row = CakeRepositories.deleteCake(c);
                lblError.Text = "Deletion Success!";
                if (row > 0)
                {
                    loadData();
                }
            }
        }
Exemple #11
0
        protected void btnCheckOut_Click(object sender, EventArgs e)
        {
            Member m = (Member)Session["userLogin"];

            DateTime date      = DateTime.Now.Date;
            String   custEmail = m.Email;

            List <CartSession> cart = (List <CartSession>)Session["cartSessionData"];

            foreach (CartSession c in cart)
            {
                TransactionController.create(custEmail, date, m.Name, c.cakeName, c.cakePrice, c.chocPlat, c.proTitle, c.proDiscount, c.subTotal);

                Cake ca = CakeController.get(c.cakeName);
                CakeController.minusCake(ca);
            }

            Session["cartSessionData"] = null;
            Session["cartSessionData"] = new List <CartSession>();

            erMessage.Text = "Checkout Success!";
            loadData();
        }
        public void Can_Paginate()
        {
            //Мокаем данные
            Mock <ICakeRepository> mock = new Mock <ICakeRepository>();

            mock.Setup(m => m.Cakes).Returns(new List <Cake>
            {
                new Cake {
                    Id = 1, Name = "Cake1"
                },
                new Cake {
                    Id = 2, Name = "Cake2"
                },
                new Cake {
                    Id = 3, Name = "Cake3"
                },
                new Cake {
                    Id = 4, Name = "Cake4"
                },
                new Cake {
                    Id = 5, Name = "Cake5"
                },
            });
            CakeController controller = new CakeController(mock.Object);

            controller.pageSize = 3;

            //action
            CakeListView result = (CakeListView)controller.List(null, 2).Model;

            //asserts
            List <Cake> cakes = result.Cakes.ToList();

            Assert.IsTrue(cakes.Count() == 2);
            Assert.AreEqual(cakes[0].Name, "Cake4");
            Assert.AreEqual(cakes[1].Name, "Cake5");
        }
        public void CakeOfTheWeek_ReturnsIEnumerableCake_Success()
        {
            //Arrange
            var newCake = new List <Cake>
            {
                new Cake
                {
                    Id       = 1,
                    Name     = "Royal Cake",
                    Category = new Category {
                        Id = 1, Name = "CiocolateCake"
                    },
                    Description     = "Best cake",
                    ImageUrl        = "/img/img1.jpg",
                    IsCakeOfTheWeek = true,
                    Price           = 12,
                    Stock           = 10,
                    Weigth          = "100"
                }
            };
            var cakeState             = true;
            var mockRepositoryWrapper = new Mock <IRepositoryWrapper>();

            mockRepositoryWrapper.Setup(repo => repo.Cake.GetCakeByIsCakeOfTheWeek(cakeState))
            .Returns(Task.FromResult(newCake));
            var controller = new CakeController(mockRepositoryWrapper.Object);

            //Act
            var result = controller.CakeOfTheWeek(cakeState);

            //Assert
            var ienumerableResult = Assert.IsAssignableFrom <IEnumerable <Cake> >(result.Result);

            Assert.NotNull(result.Result);
            Assert.Single(result.Result);
            Assert.Equal(result.Result.ToString(), newCake.ToString());
        }