Exemple #1
0
        public void AddProduct_Should_Call_BillItemRepositoryInsert_And_BillRepositoryEdit()
        {
            Bill billCreated = billService.AddProductToBill(1, "ASXHJ", 1);

            A.CallTo(() => _unitOfWork.BillRepository.GetById(1)).MustHaveHappenedOnceExactly();
            A.CallTo(() => _unitOfWork.BillItemRepository.Insert(A <BillItem> .Ignored)).MustHaveHappened();
            A.CallTo(() => _unitOfWork.ProductRepository.FindBy(A <Expression <Func <Product, bool> > > ._)).MustHaveHappened();
            A.CallTo(() => _unitOfWork.BillRepository.Edit(A <Bill> ._)).MustHaveHappened();
            Assert.AreEqual(bill.Id, billCreated.Id);
            Assert.AreEqual(billCreated.BillItems[0].Product.BarCode, bill.BillItems[0].Product.BarCode);
        }