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 <StavkaProknjizenaHandler> >(); var evnt = new StavkaProknjizena(nalogIzBaze.Id, Guid.NewGuid(), new DateTime(2018, 10, 22), 1, duguje, potrazuje, "opis stavke") { UserId = Guid.NewGuid().ToString() }; var handler = new StavkaProknjizenaHandler(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 Handle_Korektno() { var nalogIzBaze = new NalogGlavnaKnjiga() { Id = Guid.NewGuid(), Datum = new DateTime(2018, 10, 20), TipNaziv = "Ulazne fakture", Opis = "opis" }; var fakeRepo = new Mock <INalogGKRepository>(); fakeRepo.Setup(x => x.GetAsync(nalogIzBaze.Id)).ReturnsAsync(nalogIzBaze); var fakeTipRepo = new Mock <ITipNalogaRepository>(); fakeTipRepo.Setup(x => x.GetAsync(2)).ReturnsAsync(new TipNaloga { Naziv = "Izvodi" }); var fakeNotifications = new Mock <INotificationQueue>(); var fakeLogger = new Mock <ILogger <IzmenjenoZaglavljeNalogaHandler> >(); var evnt = new IzmenjenoZaglavljeNaloga(nalogIzBaze.Id, new DateTime(2018, 10, 21), 2, "opis novi") { UserId = Guid.NewGuid().ToString() }; var handler = new IzmenjenoZaglavljeNalogaHandler(fakeRepo.Object, fakeTipRepo.Object, fakeNotifications.Object, fakeLogger.Object); await handler.Handle(evnt, default); Assert.Equal(new DateTime(2018, 10, 21), nalogIzBaze.Datum); Assert.Equal("Izvodi", nalogIzBaze.TipNaziv); Assert.Equal("opis novi", nalogIzBaze.Opis); fakeNotifications.Verify(x => x.Add(It.Is <GlavnaKnjigaChanged>(n => n.UserId == evnt.UserId))); }
public async Task Handle_Korektno(decimal duguje, decimal potrazuje) { var evnt = new StavkaProknjizena(Guid.NewGuid(), Guid.NewGuid(), new DateTime(2018, 10, 22), 1, duguje, potrazuje, "opis stavke"); var nalog = new NalogGlavnaKnjiga() { Id = evnt.IdNaloga, Datum = new DateTime(2018, 10, 22) }; var fakeRepo = new Mock <IKarticaKontaRepository>(); var fakeGkRepo = new Mock <INalogGKRepository>(); fakeGkRepo.Setup(x => x.GetAsync(evnt.IdNaloga)).ReturnsAsync(nalog); var fakeKontoRepo = new Mock <IKontoRepository>(); var konto = new Konto() { Id = evnt.IdKonto, Sifra = "410" }; fakeKontoRepo.Setup(x => x.GetAsync(evnt.IdKonto)).ReturnsAsync(konto); var fakeNotifications = new Mock <INotificationQueue>(); var fakeLogger = new Mock <ILogger <StavkaProknjizenaHandler> >(); var handler = new StavkaProknjizenaHandler(fakeRepo.Object, fakeKontoRepo.Object, fakeGkRepo.Object, fakeNotifications.Object, fakeLogger.Object); await handler.Handle(evnt, default); fakeRepo.Verify(x => x.Add(It.Is <KarticaKonta>(s => s.Id == evnt.IdStavke && s.IdNaloga == evnt.IdNaloga && s.IdKonto == evnt.IdKonto && s.Saldo == (evnt.Duguje - evnt.Potrazuje) && s.Duguje == evnt.Duguje && s.Potrazuje == evnt.Potrazuje && s.DatumNaloga == nalog.Datum && s.DatumKnjizenja == evnt.DatumKnjizenja && s.Created == evnt.Created && s.Konto == konto.Sifra))); fakeNotifications.Verify(x => x.Add(It.IsNotNull <KarticaKontaChanged>())); }
public async Task Handle(NalogOtvoren evnt, CancellationToken cancellationToken) { logger.LogTrace($"Handling IdNaloga: {evnt.IdNaloga}"); var tip = await tipNalogaRepo.GetAsync(evnt.IdTip); NalogGlavnaKnjiga nalog = new NalogGlavnaKnjiga() { Id = evnt.IdNaloga, Datum = evnt.DatumNaloga, TipNaziv = tip.Naziv, Opis = evnt.Opis, BrojStavki = 0, UkupnoDuguje = 0, UkupnoPotrazuje = 0, UkupnoSaldo = 0, Zakljucan = false }; nalogRepo.Add(nalog); notifications.Add(new GlavnaKnjigaChanged(evnt.UserId)); }
public async Task Handle_Korektno() { var nalogIzBaze = new NalogGlavnaKnjiga() { Id = Guid.NewGuid(), }; var fakeRepo = new Mock <INalogGKRepository>(); fakeRepo.Setup(x => x.GetAsync(nalogIzBaze.Id)).ReturnsAsync(nalogIzBaze); var fakeNotifications = new Mock <INotificationQueue>(); var fakeLogger = new Mock <ILogger <NalogObrisanHandler> >(); var evnt = new NalogObrisan(nalogIzBaze.Id) { UserId = Guid.NewGuid().ToString() }; var handler = new NalogObrisanHandler(fakeRepo.Object, fakeNotifications.Object, fakeLogger.Object); await handler.Handle(evnt, default); fakeRepo.Verify(x => x.Remove(nalogIzBaze)); fakeNotifications.Verify(x => x.Add(It.Is <GlavnaKnjigaChanged>(n => n.UserId == evnt.UserId))); }
public void Remove(NalogGlavnaKnjiga nalog) { context.NaloziGlavneKnjige.Remove(nalog); }
public void Add(NalogGlavnaKnjiga nalog) { context.NaloziGlavneKnjige.Add(nalog); }