예제 #1
0
        public void VerificaDepunere()
        {
            //test: verifica ca depunerea banilor actualizeaza soldul
            // arrange
            var repo    = new ConturiRepository();
            var client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            var cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);

            //act
            cont1.DepuneBani(new Suma(99.0)); //depune 99

            //assert
            Assert.Equal(99.0, cont1.Sold.getSuma);
        }
예제 #2
0
        public void VerificaIBANUnic()
        {
            //test: nu poti adauga 2 conturi cu acelai IBAN

            // arrange
            var repo    = new ConturiRepository();
            var client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            var client2 = ConturiFactory.Instance.CreazaClient(new PlainText("Vasile"), new PlainText("Arad"));
            var cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);
            var cont2   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client2);

            repo.AdaugaCont(cont1);

            // act & assert
            Assert.Throws <IBANAlreadyExistingException>(() => repo.AdaugaCont(cont2));
        }
예제 #3
0
        public void VerificaTranzactiePartenerInexistent()
        {
            //test: verifica ca se arunca o exceptie cand se vrea o tranzactie catre un cont care nu exista

            // arrange
            var repo    = new ConturiRepository();
            var client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            var client2 = ConturiFactory.Instance.CreazaClient(new PlainText("Vasile"), new PlainText("Arad"));
            var cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);
            var cont2   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123455"), client2);

            repo.AdaugaCont(cont1);
            repo.AdaugaCont(cont2);
            cont1.DepuneBani(new Suma(99.0)); //depune 99 ca sa aiba de unde sa trasnfere

            //act & assert
            Assert.Throws <AccountNotFoundException>(() => cont1.TransferBani(new Suma(10.0), new IBAN("RO12RBND1334367830323455"), repo.getConturi));
        }
예제 #4
0
        public void VerificaRespingeFacturaFonduriInsuficiente()
        {
            //test: verifica ca se arunca o exceptie cand se vrea o tranzactie(plata factura) pt care nu sunt fonduri insufuciente
            // arrange
            var repo    = new ConturiRepository();
            var client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            var client2 = ConturiFactory.Instance.CreazaClient(new PlainText("Vasile"), new PlainText("Arad"));
            var cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);
            var cont2   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123455"), client2);

            repo.AdaugaCont(cont1);
            repo.AdaugaCont(cont2);
            cont1.DepuneBani(new Suma(99.0)); //depune 99


            // act & assert
            //vrea sa transfere 100
            Assert.Throws <InsufficientFundsException>(() => cont1.PlatesteFactura(new Suma(100.0), cont2.IBAN, repo.getConturi));
        }
예제 #5
0
        public void VerificaGrafic()
        {
            //test: verifica datele pt grafic
            // arrange
            var repo = new ConturiRepository();
            GraficSoldService grafic = new GraficSoldService();
            var client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            var client2 = ConturiFactory.Instance.CreazaClient(new PlainText("Vasile"), new PlainText("Arad"));
            var cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);
            var cont2   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123455"), client2);

            repo.AdaugaCont(cont1);
            repo.AdaugaCont(cont2);

            cont1.DepuneBani(new Suma(99.0)); //depune 99 ca sa aiba de unde sa trasnfere
            repo.updateConturi = cont1.TransferBani(new Suma(10.0), cont2.IBAN, repo.getConturi);
            repo.updateConturi = cont1.PlatesteFactura(new Suma(20.0), cont2.IBAN, repo.getConturi);
            grafic.GraficSoldInTimp(cont1);

            //vreau doar sa vad graficul
        }
예제 #6
0
        static void Main(string[] args)
        {
            ConturiRepository       repo   = new ConturiRepository();
            GraficSoldService       grafic = new GraficSoldService();
            RaportTranzactiiService raport = new RaportTranzactiiService();
            Client client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            Client client2 = ConturiFactory.Instance.CreazaClient(new PlainText("Vasile"), new PlainText("Arad"));
            Cont   cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);
            Cont   cont2   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123455"), client2);

            repo.AdaugaCont(cont1);
            repo.AdaugaCont(cont2);

            cont1.DepuneBani(new Suma(99.0)); //depune 99 ca sa aiba de unde sa trasnfere
            repo.updateConturi = cont1.TransferBani(new Suma(10.0), cont2.IBAN, repo.getConturi);
            repo.updateConturi = cont1.PlatesteFactura(new Suma(20.0), cont2.IBAN, repo.getConturi);

            grafic.GraficSoldInTimp(cont1);
            raport.RapoarteTranzactii(cont1);
            raport.RapoarteTranzactii(cont2);
            Console.ReadLine();
        }
예제 #7
0
        public void VerificaRaport()
        {
            //test: verifica ca se genereaza raport ok

            // arrange
            var repo = new ConturiRepository();
            RaportTranzactiiService raport = new RaportTranzactiiService();
            var client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            var client2 = ConturiFactory.Instance.CreazaClient(new PlainText("Vasile"), new PlainText("Arad"));
            var cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);
            var cont2   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123455"), client2);

            repo.AdaugaCont(cont1);
            repo.AdaugaCont(cont2);

            cont1.DepuneBani(new Suma(99.0)); //depune 99 ca sa aiba de unde sa trasnfere
            repo.updateConturi = cont1.TransferBani(new Suma(10.0), cont2.IBAN, repo.getConturi);
            repo.updateConturi = cont1.PlatesteFactura(new Suma(20.0), cont2.IBAN, repo.getConturi);
            raport.RapoarteTranzactii(cont1);

            //vreau doar sa genereze raportul
        }
예제 #8
0
        public void VerificaTranzactie()
        {
            //test: verifica ca se updateaza conturile ambilor parteneri la o tranzactie

            // arrange
            var repo    = new ConturiRepository();
            var client1 = ConturiFactory.Instance.CreazaClient(new PlainText("Ion"), new PlainText("Timisoara"));
            var client2 = ConturiFactory.Instance.CreazaClient(new PlainText("Vasile"), new PlainText("Arad"));
            var cont1   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123456"), client1);
            var cont2   = ConturiFactory.Instance.CreazaCont(new IBAN("RO12RBND1234567890123455"), client2);

            repo.AdaugaCont(cont1);
            repo.AdaugaCont(cont2);
            cont1.DepuneBani(new Suma(99.0)); //depune 99 ca sa aiba de unde sa trasnfere

            //act
            repo.updateConturi = cont1.TransferBani(new Suma(10.0), cont2.IBAN, repo.getConturi);

            //assert
            Assert.Equal(89.0, cont1.Sold.getSuma);
            Assert.Equal(10.0, cont2.Sold.getSuma);
        }