public async Task DodajDoBazyDanych_StatusRW_IDdokumentTypShouldBe_RW() { var ruchNaglowek = new tblRuchNaglowek { IDRuchNaglowek = 1, IDMagazynZ = 1, IDMagazynDo = 2, IsValid = true }; var status = new tblRuchStatus { IDRuchStatus = (int)StatusRuchuTowarowEnum.RozchodWewnetrzny_RW }; var ruchTowar = new tblRuchTowar { IDRuchTowar = 0, Ilosc = 10, IsValid = true }; tblRuchTowar.Setup(s => s.WhereAsync(It.IsAny <Expression <Func <tblRuchTowar, bool> > >())).ReturnsAsync(new List <tblRuchTowar> { new tblRuchTowar { IDRuchTowar = 1, Ilosc = 10 }, new tblRuchTowar { IDRuchTowar = 2, Ilosc = 20 } }); await sut.DodajDoBazyDanych(ruchTowar, status, ruchNaglowek); Assert.AreEqual((int)DokumentTypEnum.RozchodWewnetrzny_RW, sut.Towar.IDDokumentTyp); }
[TestCase(StatusRuchuTowarowEnum.PrzesuniecieMiedzymagazynowe_MM, 20)] // exp = 20 poniewaz najpierw dodajemy 10 do 30 a nastepnie odejmujemy 10 rowniez od 30 public async Task DodajDoBazyDanych_IloscMusiBycDodanaDoMagazynu(StatusRuchuTowarowEnum statusRuchu, int expected) { var ruchNaglowek = new tblRuchNaglowek { IDRuchNaglowek = 1, IDMagazynZ = 1, IDMagazynDo = 2, IsValid = true }; var status = new tblRuchStatus { IDRuchStatus = (int)statusRuchu }; var ruchTowar = new tblRuchTowar { IDRuchTowar = 0, Ilosc = 10, IsValid = true }; tblRuchTowar.Setup(s => s.WhereAsync(It.IsAny <Expression <Func <tblRuchTowar, bool> > >())).ReturnsAsync(new List <tblRuchTowar> { new tblRuchTowar { IDRuchTowar = 1, Ilosc = 10 }, new tblRuchTowar { IDRuchTowar = 2, Ilosc = 20 } }); await sut.DodajDoBazyDanych(ruchTowar, status, ruchNaglowek); Assert.AreEqual(expected, sut.Towar.IloscPo); }
public async Task DodajDoBazyDanych_IloscMusiBycDodanaOrazOdjetaZRoznychMagazynow(StatusRuchuTowarowEnum statusRuchu) { var ruchNaglowek = new tblRuchNaglowek { IDRuchNaglowek = 1, IDMagazynZ = 1, IDMagazynDo = 2, IsValid = true }; var status = new tblRuchStatus { IDRuchStatus = (int)statusRuchu }; var ruchTowar = new tblRuchTowar { IDRuchTowar = 0, Ilosc = 10, IsValid = true }; tblRuchTowar.Setup(s => s.WhereAsync(It.IsAny <Expression <Func <tblRuchTowar, bool> > >())).ReturnsAsync(new List <tblRuchTowar> { new tblRuchTowar { IDRuchTowar = 1, Ilosc = 10 }, new tblRuchTowar { IDRuchTowar = 2, Ilosc = 20 } }); await sut.DodajDoBazyDanych(ruchTowar, status, ruchNaglowek); tblRuchTowar.Verify(v => v.Add(It.IsAny <tblRuchTowar>()), Times.Exactly(2)); unitOfWork.Verify(v => v.SaveAsync(), Times.Exactly(2)); Assert.AreEqual(20, sut.Towar.IloscPo); }
public async Task DodajDoBazyDanych_StatusPZandWZ_UoWShouldBeInvokedOnce(StatusRuchuTowarowEnum statusRuchu) { var ruchNaglowek = new tblRuchNaglowek { IDRuchNaglowek = 1, IDMagazynZ = 1, IDMagazynDo = 2, IsValid = true }; var status = new tblRuchStatus { IDRuchStatus = (int)statusRuchu }; var ruchTowar = new tblRuchTowar { IDRuchTowar = 0, Ilosc = 10, IsValid = true }; tblRuchTowar.Setup(s => s.WhereAsync(It.IsAny <Expression <Func <tblRuchTowar, bool> > >())).ReturnsAsync(new List <tblRuchTowar> { new tblRuchTowar { IDRuchTowar = 1, Ilosc = 10 }, new tblRuchTowar { IDRuchTowar = 2, Ilosc = 20 } }); await sut.DodajDoBazyDanych(ruchTowar, status, ruchNaglowek); tblRuchTowar.Verify(v => v.Add(It.IsAny <tblRuchTowar>()), Times.Exactly(1)); }
public async Task DodajDoBazyDanych(tblRuchTowar towar, tblRuchStatus statusRuchu, tblRuchNaglowek naglowek) { Towar = towar; Towar.IDRuchNaglowek = naglowek.IDRuchNaglowek; if (Towar.IDRuchTowar == 0) { switch (statusRuchu.IDRuchStatus) { case (int)StatusRuchuTowarowEnum.PrzyjecieZewnetrne_PZ: await ZapiszWBazie(naglowek.IDMagazynDo.Value, DokumentTypEnum.PrzyjęcieZewnętrzne_PZ, dodajemyIlosc); break; case (int)StatusRuchuTowarowEnum.PrzesuniecieMiedzymagazynowe_MM: await ZapiszWBazie(naglowek.IDMagazynDo.Value, DokumentTypEnum.PrzesuniecieMiedzymagazynowe_MM, dodajemyIlosc); await ZapiszWBazie(naglowek.IDMagazynZ.Value, DokumentTypEnum.PrzesuniecieMiedzymagazynowe_MM, odejmujemyIlosc); break; case (int)StatusRuchuTowarowEnum.WydanieZewnetrzne_WZ: await ZapiszWBazie(naglowek.IDMagazynZ.Value, DokumentTypEnum.WydanieZewnetrzne_WZ, odejmujemyIlosc); break; case (int)StatusRuchuTowarowEnum.PrzyjecieWewnetrzne_PW: await ZapiszWBazie(naglowek.IDMagazynDo.Value, DokumentTypEnum.PrzyjecieWewnetrzne_PW, dodajemyIlosc); break; case (int)StatusRuchuTowarowEnum.RozchodWewnetrzny_RW: await ZapiszWBazie(naglowek.IDMagazynZ.Value, DokumentTypEnum.RozchodWewnetrzny_RW, odejmujemyIlosc); break; default: break; } } }