public static String Proceseaza(double sum, ContDTO source) { AG_ROOT_Cont sursa = new AG_ROOT_Cont(new Modele.Generic.IBAN(source.iban), new Client(new PlainText(source.client), new PlainText("nu conteaza")), new Suma(source.Sold)); AG_ROOT_Cont result = sursa.DepuneBani(new Suma(sum)); //Pregateste rezultatul tranzactiei ca raspuns inapoi catre MVC //obtine tranzactia sursei TranzactieDTO tranzDTO = new TranzactieDTO(); tranzDTO.partenerTranzactie = result.IstoricTranzactii.getTranzactii.First().PartenerTranzactie.getIBAN; tranzDTO.suma = result.IstoricTranzactii.getTranzactii.First().Suma.getSuma; tranzDTO.data = DateTime.Today.ToString(); if (result.IstoricTranzactii.getTranzactii.First().Tip.Equals(TipTranzactie.Depunere)) { tranzDTO.tipTranz = "depunere"; } //obtine datele contului modificat ContDTO updatedAccount = new ContDTO(); updatedAccount.client = result.DateClient.Nume.Text; updatedAccount.iban = result.IBAN.getIBAN; updatedAccount.Sold = result.Sold.getSuma; return(new SerializedResultDTO(updatedAccount, tranzDTO).Serialize()); }
public void DepuneBani() { //clientul are 100 de lei in cont var cont = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100)); cont.DepuneBani(new Suma(50)); //depune 50 Assert.Equal(150.0, cont.Sold.getSuma); //verifica ca s-au depus }
public void NuPermiteTranzactiiPesteSoldulCurent() { //clientul 1 are 100 de lei in cont var cont1 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100)); //clientul 2 are 30 de lei in cont var cont2 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372892"), new Client(new PlainText("Vasile"), new PlainText("timisoara")), new Suma(30)); List <AG_ROOT_Cont> conturi; //din contul 2 vrem sa transferam 50 lei in contul 1 var ex = Assert.Throws <InsufficientFundsException>(() => conturi = (new AG_ROOT_Cont()).TransferBaniIntreDouaConturi(new Suma(50.0), cont2, cont1)); }
public void TransferaBani() { //clientul 1 are 100 de lei in cont var cont1 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100)); //clientul 2 are 500 de lei in cont var cont2 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372892"), new Client(new PlainText("Vasile"), new PlainText("timisoara")), new Suma(500)); //din contul 2 transferam 50 lei in contul 1 List <AG_ROOT_Cont> conturi = (new AG_ROOT_Cont()).TransferBaniIntreDouaConturi(new Suma(50.0), cont2, cont1); Assert.Equal(150, conturi[1].Sold.getSuma); Assert.Equal(450, conturi[0].Sold.getSuma); }
public static String Proceseaza(double sum, ContDTO source, ContDTO destination) { AG_ROOT_Cont sursa = new AG_ROOT_Cont(new Modele.Generic.IBAN(source.iban), new Client(new PlainText(source.client), new PlainText("nu conteaza")), new Suma(source.Sold)); AG_ROOT_Cont dest = new AG_ROOT_Cont(new Modele.Generic.IBAN(destination.iban), new Client(new PlainText(destination.client), new PlainText("nu conteaza")), new Suma(destination.Sold)); AG_ROOT_Cont vehicle = new AG_ROOT_Cont(); //cere modelului sa efectueze tranzactia List <AG_ROOT_Cont> result = vehicle.TransferBaniIntreDouaConturi(new Suma(sum), sursa, dest); //Pregateste rezultatul tranzactiei ca raspuns inapoi catre MVC //obtine tranzactia efectuata de sursa TranzactieDTO tranzDTOScr = new TranzactieDTO(); tranzDTOScr.partenerTranzactie = result.First().IstoricTranzactii.getTranzactii.First().PartenerTranzactie.getIBAN; tranzDTOScr.suma = result.First().IstoricTranzactii.getTranzactii.First().Suma.getSuma; tranzDTOScr.data = DateTime.Today.ToString(); if (result.First().IstoricTranzactii.getTranzactii.First().Tip.Equals(TipTranzactie.Transfer)) { tranzDTOScr.tipTranz = "transfer"; } //obtine tranzactia efectuata la destinatar TranzactieDTO tranzDTODest = new TranzactieDTO(); tranzDTODest.partenerTranzactie = result[1].IstoricTranzactii.getTranzactii.First().PartenerTranzactie.getIBAN; tranzDTODest.suma = result[1].IstoricTranzactii.getTranzactii.First().Suma.getSuma; tranzDTODest.data = DateTime.Today.ToString(); if (result[1].IstoricTranzactii.getTranzactii.First().Tip == TipTranzactie.Transfer) { tranzDTODest.tipTranz = "transfer"; } //obtine datele conturilor modifcate ContDTO updatedAccountSrc = new ContDTO(); updatedAccountSrc.client = result[0].DateClient.Nume.Text; updatedAccountSrc.iban = result[0].IBAN.getIBAN; updatedAccountSrc.Sold = result[0].Sold.getSuma; ContDTO updatedAccountDest = new ContDTO(); updatedAccountDest.client = result[1].DateClient.Nume.Text; updatedAccountDest.iban = result[1].IBAN.getIBAN; updatedAccountDest.Sold = result[1].Sold.getSuma; return(new SerializedResultDTO(updatedAccountSrc, updatedAccountDest, tranzDTOScr, tranzDTODest).Serialize()); }
public void VerificaIstoricTranzactii() { //clientul 1 are 100 de lei in cont var cont1 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100)); //clientul 2 are 500 de lei in cont var cont2 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372892"), new Client(new PlainText("Vasile"), new PlainText("timisoara")), new Suma(500)); //din contul 2 transferam 50 lei in contul 1 List <AG_ROOT_Cont> conturi = (new AG_ROOT_Cont()).TransferBaniIntreDouaConturi(new Suma(50.0), cont2, cont1); //verifica destinatarul Assert.Equal(TipTranzactie.Transfer, conturi[1].IstoricTranzactii.getTranzactii[0].Tip); Assert.Equal(cont2.IBAN.getIBAN, conturi[1].IstoricTranzactii.getTranzactii[0].PartenerTranzactie.getIBAN); Assert.Equal(50, conturi[1].IstoricTranzactii.getTranzactii[0].Suma.getSuma); //verifica sursa Assert.Equal(TipTranzactie.Transfer, conturi[0].IstoricTranzactii.getTranzactii[0].Tip); Assert.Equal(cont1.IBAN.getIBAN, conturi[0].IstoricTranzactii.getTranzactii[0].PartenerTranzactie.getIBAN); Assert.Equal(50, conturi[0].IstoricTranzactii.getTranzactii[0].Suma.getSuma); }
public void NuAcceptaIBANIncorect() { AG_ROOT_Cont cont; var ex = Assert.Throws <IBANFormatNotOKException>(() => cont = new AG_ROOT_Cont(new IBAN("123"), new Client(new PlainText("Ion"), new PlainText("timisoara")))); }