public void Czy_Uaktualnij_Uaktulnia_Poprawnie() { // Ustal IFabrykaModelu fabrykaModelu = Stworz_FabrykaModelu_Mock.Stworz_WeryfikowalnyObliczaczMock(out Mock <IObliczaczTabeliNaleznosciProkurent> obliczaczTabeliNaleznosciProkurent_Mock); IModelDzielnika model = Stworz_ModelDzielnika.Stworz(fabrykaModelu); ITabelaNaleznosciZwrotna tabelaNaleznoscOtrzymana = null; Mock <Action <object, ObliczonaTabelaNaleznosci_ArgumentZdarzenia> > action = new Mock <Action <object, ObliczonaTabelaNaleznosci_ArgumentZdarzenia> >(); model.ObliczonaTabelNaleznocsci += (sender, e) => { tabelaNaleznoscOtrzymana = e.TabelaNaleznosciZwrotna; }; ITablicaOsobBaza tablicaOsob = Stworz_TablicaOsobPienieznych_Mock.Stworz_Mock(); KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci = default(KryteriumWyboruTabeliNaleznosciWylicznik); //Dzialaj model.Uaktualnij(tablicaOsob, kryteriumWyboruTabeliNaleznosci); // Asercja obliczaczTabeliNaleznosciProkurent_Mock. Verify(obliczacz => obliczacz.ObliczNaleznosci ( It.Is <ITablicaOsobBaza>(tablica => tablica.Equals(tablicaOsob)), It.Is <KryteriumWyboruTabeliNaleznosciWylicznik>(kryterium => kryterium.Equals(kryteriumWyboruTabeliNaleznosci)) ), Times.Once); }
public void Czy_Wywoluje_Znajdz_Prawidlowo() { //Ustal Mock <INajlepszaWymianaNalezosciPienieznejZnajdywacz> znajdywacz_Mock = Stworz_NajlepszaWymianaNalezosciPienieznejZnajdywacz_Mock.Stworz_Weryfikator_Mock(); IFabrykaDlaTabelaNaleznosciPienieznychObliczacz fabryka = Stworz_FabrykaDlaTabelaNaleznosciObliczaczPienieznych_Mock.Stworz_Weryfikator_Mock(znajdywacz_Mock); Mock <ITablicaOsobPienieznaKoncowaPrefabrykator> prefabrykator_Mock = Stworz_TablicaOsobKoncowaPrefabrykator_Mock.Stworz_Weryfikator_Mock(); ITabelaNaleznosciPienieznychObliczacz Obliczacz = Stworz_TabelaNaleznosciPienieznychObliczacz.Stworz(fabryka, prefabrykator_Mock.Object); ITablicaOsobPienieznych tablicaOsob = Stworz_TablicaOsobPienieznych_Mock.Stworz_Mock(); KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosciWylicznik = default(KryteriumWyboruTabeliNaleznosciWylicznik); //Dzialaj Obliczacz.ObliczNaleznosci(tablicaOsob, kryteriumWyboruTabeliNaleznosciWylicznik); //Asercja znajdywacz_Mock.Verify(znajdywacz => znajdywacz.Znajdz(It.IsAny <ITablicaOsobPienieznych>()), Times.Once); prefabrykator_Mock.Verify(prefabrykator => prefabrykator.StworzTablicaKoncowa(It.IsAny <ITablicaOsobPienieznych>()), Times.Once); }
public ITabelaNaleznosciPienieznej StworzTabelaNaleznosci(byte iloscOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { IKryteriumWyboruTabeliNaleznosciPienieznej kryterium = fabrykaKryteriumWyboruTabeliNaleznosci.StworzKryteriumWyboruTabeliNaleznosci(kryteriumWyboruTabeliNaleznosci); return(new TabelaNaleznosciPienieznej(iloscOsob, kryterium, abstrakcyjnaFabrykaNaleznosciDlaTabeliNaleznosci)); }
public void Uaktualnij(ITablicaOsobBaza tablicaOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { TablicaOsob = tablicaOsob; KryteriumWyboruTabeliNaleznosci = kryteriumWyboruTabeliNaleznosci; NaUaktualnienieModelu(); }
public Ustawienia(KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci, RodzajNaleznosciWylicznik rodzajNaleznosciWylicznik, byte iloscOsob) { KryteriumWyboruTabeliNaleznosci = kryteriumWyboruTabeliNaleznosci; IloscOsob = iloscOsob; RodzajNaleznosciWylicznik = rodzajNaleznosciWylicznik; }
public FabrykaDlaNajlepszaWymianaNalezosciPienieznejZnajdywaczFasada(IFabrykaDlaNajlepszaWymianaNalezosciPienieznejZnajdywacz fabryka, byte iloscOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { this.fabryka = fabryka; this.iloscOsob = iloscOsob; this.kryteriumWyboruTabeliNaleznosci = kryteriumWyboruTabeliNaleznosci; }
public ITabelaNaleznosciPienieznejZwrotna ObliczNaleznosci(ITablicaOsobPienieznych tablicaOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { ITablicaOsobPienieznych koncowaTablicaOsob = tablicaOsobKoncowaPrefabrykator.StworzTablicaKoncowa(tablicaOsob); INajlepszaWymianaNalezosciPienieznejZnajdywacz znajdywacz = fabryka.StworzNajlepszaWymianaNalezosciPienieznejZnajdywacz(koncowaTablicaOsob, kryteriumWyboruTabeliNaleznosci); return(znajdywacz.Znajdz(tablicaOsob)); }
public void Czy_Uaktualnij_Uaktualnia() { //Ustal Mock <IModelDzielnikaDlaUaktualniaczModelu> model_Mock = Stworz_Model_Mock.Stworz_Uaktualnij_WeryfikowalnyMock(); IModelUaktualniacz uaktualniacz = Stworz_ModelUaktualniacz.Stworz(model_Mock.Object); ITablicaOsobBaza tablicaOsob = Stworz_TablicaOsobPienieznych_Mock.Stworz_Mock(); KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci = default(KryteriumWyboruTabeliNaleznosciWylicznik); //Dzialaj uaktualniacz.Uaktualnij(tablicaOsob, kryteriumWyboruTabeliNaleznosci); //Asercja model_Mock.Verify(model => model.Uaktualnij ( It.Is <ITablicaOsobBaza>(tablica => tablica.Equals(tablicaOsob)), It.Is <KryteriumWyboruTabeliNaleznosciWylicznik>(kryterium => kryterium.Equals(kryteriumWyboruTabeliNaleznosci)) ), Times.Once, "Uaktualniacz nie uaktualnil modelu."); }
public void Czy_Wywoluje_Znajdz_Prawidlowo() { //Ustal Mock <ITabelaNaleznosciPienieznychObliczacz> obliczacz_Mock = Stworz_TabelaNaleznosciPienieznychObliczacz_Mock.Stworz_Weryfikator_Mock(); Mock <IFabrykaDlaObliczaczTabeliNaleznosciProkurent> fabryka = Stworz_FabrykaDlaObliczaczTabeliNaleznosciProkurent_Mock.Stworz_Weryfikator_Mock(obliczacz_Mock); IObliczaczTabeliNaleznosciProkurent Obliczacz = Stworz_ObliczaczTabeliNaleznosciProkurent.Stworz(fabryka.Object); ITablicaOsobPienieznych tablicaOsob = Stworz_TablicaOsobPienieznych_Mock.Stworz_Mock(); KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosciWylicznik = default(KryteriumWyboruTabeliNaleznosciWylicznik); //Dzialaj Obliczacz.ObliczNaleznosci(tablicaOsob, kryteriumWyboruTabeliNaleznosciWylicznik); //Asercja obliczacz_Mock.Verify(obliczacz => obliczacz.ObliczNaleznosci(It.IsAny <ITablicaOsobPienieznych>(), It.IsAny <KryteriumWyboruTabeliNaleznosciWylicznik>()), Times.Once); fabryka.Verify(_fabryka => _fabryka.StworzObliczaczTabeliNaleznosciPienieznych(), Times.Once); }
internal static ITabelaNaleznosciPienieznej Stworz(int sumaNaleznosciDoTabeli, byte iloscOsob = 4, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci = default(KryteriumWyboruTabeliNaleznosciWylicznik)) { ITabelaNaleznosciPienieznej tabelaNaleznosci = Stworz_Pusty(iloscOsob, kryteriumWyboruTabeliNaleznosci); Random GeneratorLiczbPseudolosowych = new Random(); for (byte indeks_X = 2; indeks_X < iloscOsob; indeks_X++) { for (byte indeks_Y = 0; indeks_Y < indeks_X; indeks_Y++) { int komorka = GeneratorLiczbPseudolosowych.Next(sumaNaleznosciDoTabeli); if (komorka > 0) { sumaNaleznosciDoTabeli -= komorka; IPolozenieWTabeliNaleznosci polozenieWTabeli = Stworz_PolozenieWTabeliNaleznosci.Stworz(indeks_X, indeks_Y); tabelaNaleznosci. DodajWymianeNalzenosciUaktualniajacKryterium(Stworz_NaleznoscPieniezna.Stworz(komorka), polozenieWTabeli); } } } if (sumaNaleznosciDoTabeli > 0) { IPolozenieWTabeliNaleznosci polozenieWTabeli = Stworz_PolozenieWTabeliNaleznosci.Stworz(1, 0); tabelaNaleznosci. DodajWymianeNalzenosciUaktualniajacKryterium(Stworz_NaleznoscPieniezna.Stworz(sumaNaleznosciDoTabeli), polozenieWTabeli); } return(tabelaNaleznosci); }
internal static ITabelaNaleznosciPienieznej Stworz(int[][] naleznosciDoTabeliNalznosci, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci = default(KryteriumWyboruTabeliNaleznosciWylicznik)) { byte iloscOsob = (byte)naleznosciDoTabeliNalznosci.GetLength(0); ITabelaNaleznosciPienieznej tabelaNaleznosci = Stworz_Pusty((byte)(iloscOsob + 1), kryteriumWyboruTabeliNaleznosci); for (byte indeks_X = 0; indeks_X < iloscOsob; indeks_X++) { for (byte indeks_Y = 0; indeks_Y <= indeks_X; indeks_Y++) { int komorka = naleznosciDoTabeliNalznosci[indeks_X][indeks_Y]; if (komorka != 0) { tabelaNaleznosci. DodajWymianeNalzenosciUaktualniajacKryterium(Stworz_NaleznoscPieniezna.Stworz(komorka), Stworz_PolozenieWTabeliNaleznosci.Stworz((byte)(indeks_X + 1), indeks_Y)); } } } return(tabelaNaleznosci); }
public INajlepszaWymianaNalezosciPienieznejZnajdywacz StworzNajlepszaWymianaNalezosciPienieznejZnajdywacz(ITablicaOsobPienieznych koncowaTablicaOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { INajwiekszaMozliwaNaleznoscPienieznaDoWymianyUstalacz ustalacz = StworzNajwiekszaMozliwaNaleznoscDoWymianyUstalacz(koncowaTablicaOsob); IRozniceDoStanuKwitaNaleznosciPienieznychSumator sumator = StworzRozniceDoStanuKwitaNaleznosciPienieznychSumator(koncowaTablicaOsob); IFabrykaDlaNajlepszaWymianaNalezosciPienieznejZnajdywaczFasada fasadaFabryki = StworzFasadaFabrykiDlaNajlepszaWymianaNalezosciPienieznejZnajdywacz(koncowaTablicaOsob.WezIloscOsob, kryteriumWyboruTabeliNaleznosci); return(new NajlepszaWymianaNalezosciPienieznejZnajdywacz(fasadaFabryki, ustalacz, sumator)); }
public void Uaktualnij(ITablicaOsobBaza tablicaOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { model.Uaktualnij(tablicaOsob, kryteriumWyboruTabeliNaleznosci); }
internal static ITabelaNaleznosciPienieznej Stworz_Pusty(byte iloscOsob = 4, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci = default(KryteriumWyboruTabeliNaleznosciWylicznik)) { return(fabrykaTabelaNaleznosci.StworzTabelaNaleznosci(iloscOsob, kryteriumWyboruTabeliNaleznosci)); }
public IKryteriumWyboruTabeliNaleznosciPienieznej StworzKryteriumWyboruTabeliNaleznosci(KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { switch (kryteriumWyboruTabeliNaleznosci) { case KryteriumWyboruTabeliNaleznosciWylicznik.KryteriumSumyWymienionejNaleznosci: goto default; case KryteriumWyboruTabeliNaleznosciWylicznik.IlosciWymian: return(new KryteriumIlosciWymian(fabrykaNaleznoscPieniezna.StworzNaleznoscZerowa())); default: return(new KryteriumSumyWymienionejNaleznosciPienieznej(fabrykaNaleznoscPieniezna.StworzNaleznoscZerowa())); } }
private IFabrykaDlaNajlepszaWymianaNalezosciPienieznejZnajdywaczFasada StworzFasadaFabrykiDlaNajlepszaWymianaNalezosciPienieznejZnajdywacz(byte iloscOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { return(new FabrykaDlaNajlepszaWymianaNalezosciPienieznejZnajdywaczFasada(this, iloscOsob, kryteriumWyboruTabeliNaleznosci)); }
/// <summary> /// Stworz argument zmiany kryterium wyboru w ustawieniach. /// </summary> public ZmianaUstawieniaKryteriumWyboruTabeliNaleznosci_ArgumentyZdarzenia(KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { KryteriumWyboruTabeliNaleznosci = kryteriumWyboruTabeliNaleznosci; }
public ITabelaNaleznosciPienieznej StworzStartowaTabelaNaleznosciPienieznej(byte iloscOsob, KryteriumWyboruTabeliNaleznosciWylicznik kryteriumWyboruTabeliNaleznosci) { return(fabrykaTabelaNalezosciPienieznej.StworzTabelaNaleznosci(iloscOsob, kryteriumWyboruTabeliNaleznosci)); }