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

            mock.Setup(x => x.Execute(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(1);
            BookTable booktable = new BookTable(mock.Object);
            Book      book      = new Book();

            book.SetName("TestBook");
            book.SetAuthor("TestSuthor");
            book.SetStatus("available");
            book.SetPrice(25);
            book.SetRackno(5);
            book.SetCount(10);
            int result = booktable.Insert(book);

            Assert.AreEqual(1, result);
        }
Exemple #2
0
        public ActionResult AddBook(Book newbook)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    // BookValidation bookValidation = new BookValidation();
                    // validating whether the book already exists or not
                    // Abstract Factory pattern
                    AbstractFactory abstractfactory = FactoryProducer.GetFactory("IBookValidation");
                    IBookValidation bookValidation  = abstractfactory.getbookvalidation("BookValidation");

                    if (bookValidation.ValidateBook(newbook))
                    {
                        int       id        = newbook.BookID;
                        BookTable booktable = new BookTable(db);
                        newbook.Status = BookStatus.Available.ToString();
                        booktable.Insert(newbook);
                        ModelState.Clear();
                        ViewBag.Message = newbook.Name + ProjectConstants.SuccessMsg;
                    }
                    else
                    {
                        ViewBag.Message = ProjectConstants.AddBookFailMsg;
                        return(View(ProjectConstants.AddBook));
                    }
                    return(View(ProjectConstants.AddBook));
                }
            }

            catch (Exception)
            {
                log.Error("Error while adding book to the database");
                throw;
            }
            return(View(ProjectConstants.AddBook));
        }