예제 #1
0
        public void update_montant_et_expediteur_et_recepteur_test()
        {
            moqDbContext     = new Mock <DbContextEntities>();
            moqDbSetTranfert = new Mock <DbSet <Transfert> >();
            moqDbSetCompte   = new Mock <DbSet <Compte> >();

            moqDbContext.Setup(c => c.SaveChanges()).Returns(5); // changment dans le montant et l'expediteur et le recepteur
            moqDbSetCompte.Setup(m => m.Find(It.IsAny <Object[]>())).Returns((Object[] ids) => comptes.FirstOrDefault(compte => compte.id == (int)ids[0]));
            moqDbSetTranfert.Setup(m => m.Find(It.IsAny <Object[]>())).Returns((Object[] ids) => transferts.FirstOrDefault(t => t.id == (int)ids[0]));
            moqDbSetTranfert.Setup(m => m.Add(It.IsAny <Transfert>())).Returns((Transfert t) => { transferts.Add(t); return(t); });

            transfertRepository = new TransfertRepository(moqDbContext.Object, moqDbSetTranfert.Object, moqDbSetCompte.Object);

            bool resualtat = transfertRepository.Update(new Transfert
            {
                id = 1,
                idCompteExpediteur = 3,
                idCompteRecepteur  = 4,
                montant            = 200,
                dateCreation       = new DateTime(),
                designation        = "transfert 1"
            });

            Assert.IsTrue(resualtat);                          // le update a resussie
            Assert.IsTrue(comptes.ElementAt(0).solde == 1100); // l'ancien expediteur
            Assert.IsTrue(comptes.ElementAt(1).solde == 1900); // l'ancien recepteur
            Assert.IsTrue(comptes.ElementAt(2).solde == 2800); // le nouveau expediteur
            Assert.IsTrue(comptes.ElementAt(3).solde == 4200); // le nouveau recepteur
        }
예제 #2
0
 public bool UpdateTransfert(Models.Transfert transfert)
 {
     return(transfertRepository.Update(transfert));
 }