public void TestOfFacade()
        {
            tSupplier supplier = new tSupplier
            {
                Id   = 10,
                Name = "New Delivery Company",
                NIP  = "18234323"
            };
            tBook book = new tBook
            {
                Id       = 20,
                Name     = "Tożsamość Bourne'a",
                Author   = "Robert Ludlum",
                Amount   = 50,
                isNew    = true,
                Price    = 30.99f,
                Supplier = supplier
            };

            int   titlesBeforePurchase         = bookSrv.GetBookList().Count;
            float accountBalanceBeforePurchase = eventSrv.GetAccountBalance();

            userFcd.BuyBook(book);
            Assert.AreEqual(bookSrv.GetBookList().Count - titlesBeforePurchase, 1);
            Assert.AreEqual(accountBalanceBeforePurchase - eventSrv.GetAccountBalance(), book.Price * book.Amount);

            int   AmountOfBooksPurchase       = bookSrv.GetBook(0).Amount;
            float accountBalanceBeforeSelling = eventSrv.GetAccountBalance();

            userFcd.SellBook(0, 0);
            Assert.AreEqual(AmountOfBooksPurchase - bookSrv.GetBook(0).Amount, 1);
            Assert.AreEqual(eventSrv.GetAccountBalance() - accountBalanceBeforeSelling, bookSrv.GetBook(0).Price, 0.01);
        }
Esempio n. 2
0
 public void UpdateBook(tBook book)
 {
     DeleteBook(book.Id);
     CreateBook(book);
     // var tempbook = database.Books.Single(x => x.Id == book.Id);
     // tempbook = book;
 }
Esempio n. 3
0
        public void BuyBook(tBook book)
        {
            var bookInDatabase = _bookSrv.GetBook(book.Id);
            var isBought       = bookInDatabase != null;

            if (isBought)
            {
                _bookSrv.UpdateBook(new tBook
                {
                    Amount   = bookInDatabase.Amount + book.Amount,
                    Author   = book.Author,
                    Id       = book.Id,
                    isNew    = book.isNew,
                    Name     = book.Name,
                    Price    = book.Price,
                    Supplier = book.Supplier
                });
            }
            else
            {
                _bookSrv.CreateBook(new tBook
                {
                    Amount   = book.Amount,
                    Author   = book.Author,
                    Id       = book.Id,
                    isNew    = book.isNew,
                    Name     = book.Name,
                    Price    = book.Price,
                    Supplier = book.Supplier
                });
            }

            _eventSrv.RegisterEvent(new tBookBoughtEvent
            {
                EventTime      = DateTime.Now,
                AccountBalance = _eventSrv.GetAccountBalance() - (book.Price * book.Amount),
                Book           = book,
                Id             = _eventSrv.GetLastId() + 1,
                Supplier       = book.Supplier
            });
        }
Esempio n. 4
0
 public void CreateBook(tBook book)
 {
     datacontext.Books.Add(book);
 }