public void TransferInvoice() { var buyerA = new Buyer() { Id = 1, Name = "Michel" }; var invoice = new Invoice() { Id = 1, DueDate = DateTime.Now, Value = 10 }; buyerA.AddInvoice(invoice); var buyerB = new Buyer() { Id = 2, Name = "Michel" }; buyerRepositoryMock.GetById(buyerA.Id).Returns(buyerA); buyerRepositoryMock.GetById(buyerB.Id).Returns(buyerB); buyerService.TransferInvoice(buyerA, buyerB, invoice); //Asserts buyerRepositoryMock.Received(2).GetById(Arg.Any <int>()); buyerRepositoryMock.Received().Save(); Assert.IsNotNull(buyerB.Invoices); Assert.AreEqual(1, buyerB.Invoices.Count); }