public async Task Handle_Korektno()
        {
            var stavkaIzBaze = new KarticaKonta()
            {
                Id             = Guid.NewGuid(),
                IdNaloga       = Guid.NewGuid(),
                IdKonto        = 1,
                DatumNaloga    = new DateTime(2018, 10, 20),
                DatumKnjizenja = new DateTime(2018, 10, 21),
                Created        = new DateTime(2018, 10, 21),
                Duguje         = 50,
                Potrazuje      = 0,
                Saldo          = 50,
                Opis           = "opis"
            };
            var fakeRepo = new Mock <IKarticaKontaRepository>();

            fakeRepo.Setup(x => x.GetAsync(stavkaIzBaze.Id)).ReturnsAsync(stavkaIzBaze);
            var fakeNotifications = new Mock <INotificationQueue>();
            var fakeLogger        = new Mock <ILogger <StavkaUklonjenaHandler> >();
            var evnt = new StavkaUklonjena(stavkaIzBaze.IdNaloga, stavkaIzBaze.Id, stavkaIzBaze.DatumKnjizenja,
                                           stavkaIzBaze.IdKonto, stavkaIzBaze.Duguje, stavkaIzBaze.Potrazuje, stavkaIzBaze.Opis);
            var handler = new StavkaUklonjenaHandler(fakeRepo.Object, fakeNotifications.Object, fakeLogger.Object);

            await handler.Handle(evnt, default);

            fakeRepo.Verify(x => x.Remove(stavkaIzBaze));
            fakeNotifications.Verify(x => x.Add(It.IsNotNull <KarticaKontaChanged>()));
        }
Beispiel #2
0
        public async Task Handle_Korektno(decimal duguje, decimal potrazuje)
        {
            int     brojStavki      = 7;
            decimal ukupnoDuguje    = 400;
            decimal ukupnoPotrazuje = 700;
            decimal ukupnoSaldo     = -300;
            var     nalogIzBaze     = new NalogGlavnaKnjiga()
            {
                Id              = Guid.NewGuid(),
                BrojStavki      = brojStavki,
                UkupnoDuguje    = ukupnoDuguje,
                UkupnoPotrazuje = ukupnoPotrazuje,
                UkupnoSaldo     = ukupnoSaldo
            };
            var fakeRepo = new Mock <INalogGKRepository>();

            fakeRepo.Setup(x => x.GetAsync(nalogIzBaze.Id)).ReturnsAsync(nalogIzBaze);
            var fakeNotifications = new Mock <INotificationQueue>();
            var fakeLogger        = new Mock <ILogger <StavkaUklonjenaHandler> >();
            var evnt = new StavkaUklonjena(nalogIzBaze.Id, Guid.NewGuid(), new DateTime(2018, 10, 22), 1, duguje, potrazuje, "opis stavke")
            {
                UserId = Guid.NewGuid().ToString()
            };
            var handler = new StavkaUklonjenaHandler(fakeRepo.Object, fakeNotifications.Object, fakeLogger.Object);

            await handler.Handle(evnt, default);

            Assert.Equal(brojStavki - 1, nalogIzBaze.BrojStavki);
            Assert.Equal(ukupnoDuguje - duguje, nalogIzBaze.UkupnoDuguje);
            Assert.Equal(ukupnoPotrazuje - potrazuje, nalogIzBaze.UkupnoPotrazuje);
            Assert.Equal(nalogIzBaze.UkupnoDuguje - nalogIzBaze.UkupnoPotrazuje, nalogIzBaze.UkupnoSaldo);
            fakeNotifications.Verify(x => x.Add(It.Is <GlavnaKnjigaChanged>(n => n.UserId == evnt.UserId)));
        }
        public async Task StavkaNePostoji_Greska()
        {
            var fakeRepo   = new Mock <IStavkaFormRepository>();
            var fakeLogger = new Mock <ILogger <StavkaUklonjenaHandler> >();
            var evnt       = new StavkaUklonjena(Guid.NewGuid(), Guid.NewGuid(), new DateTime(2018, 10, 22), 1, 100, 0, "opis stavke");
            var handler    = new StavkaUklonjenaHandler(fakeRepo.Object, fakeLogger.Object);

            Func <Task> handle = async() => await handler.Handle(evnt, default);

            await Assert.ThrowsAsync <PreglediException>(handle);
        }
        public void Primeni_StavkaUklonjena()
        {
            var nalog = FinNalogHelper.NalogFromDb(callBase: true);

            nalog.Protected().SetupGet <List <FinStavka> >("_stavke").Returns(new List <FinStavka>
            {
                new FinStavka(Guid.NewGuid(), 1, 100, 0, "opis stavke 1", new DateTime(2018, 10, 30)),
                new FinStavka(Guid.NewGuid(), 2, 200, 0, "opis stavke 2", new DateTime(2018, 10, 30))
            });
            var stavka = nalog.Object.Stavke.First();
            var evnt   = new StavkaUklonjena(nalog.Object.Id, stavka.Id, stavka.DatumKnjizenja,
                                             stavka.IdKonto, stavka.Iznos.Duguje, stavka.Iznos.Potrazuje, stavka.Opis);

            nalog.Object.Primeni(evnt);

            Assert.Equal(1, nalog.Object.Stavke.Count);
            Assert.DoesNotContain(nalog.Object.Stavke, s => s.Id == evnt.IdStavke);
        }
        public async Task Handle_Korektno()
        {
            var stavkaIzBaze = new StavkaForm()
            {
                Id = Guid.NewGuid()
            };
            var fakeRepo = new Mock <IStavkaFormRepository>();

            fakeRepo.Setup(x => x.GetAsync(stavkaIzBaze.Id)).ReturnsAsync(stavkaIzBaze);
            var fakeLogger = new Mock <ILogger <StavkaUklonjenaHandler> >();
            var evnt       = new StavkaUklonjena(Guid.NewGuid(), stavkaIzBaze.Id, new DateTime(2018, 10, 22), 1, 100, 0, "opis stavke")
            {
                UserId = Guid.NewGuid().ToString()
            };
            var handler = new StavkaUklonjenaHandler(fakeRepo.Object, fakeLogger.Object);

            await handler.Handle(evnt, default);

            fakeRepo.Verify(x => x.Remove(stavkaIzBaze));
        }
Beispiel #6
0
        internal void Primeni(StavkaUklonjena evnt)
        {
            var stavka = _stavke.Where(x => x.Id == evnt.IdStavke).Single();

            _stavke.Remove(stavka);
        }