public void RozdzielaczMorzIJeziorOdpowiednioPrzypisujeTypy(int indeksInicjatora, TypKomorki spodziewanyTypK1, TypKomorki spodziewanyTypK2, TypKomorki spodziewanyTypK3, TypKomorki spodziewanyTypK4, TypKomorki spodziewanyTypK5) { _komorki = MockKomorek(); IMapa mapa = MockKlasyMapa(_komorki); IKomorka inicjator = _komorki.ElementAt(indeksInicjatora); IPrzetwarzaczMapy rozdzielacz = new RozdzielaczMorzIJezior(inicjator); mapa.ZastosujPrzetwarzanie(rozdzielacz); _komorki.ElementAt(0).Dane.Typ.ShouldEqual(spodziewanyTypK1); _komorki.ElementAt(1).Dane.Typ.ShouldEqual(spodziewanyTypK2); _komorki.ElementAt(2).Dane.Typ.ShouldEqual(spodziewanyTypK3); _komorki.ElementAt(3).Dane.Typ.ShouldEqual(spodziewanyTypK4); _komorki.ElementAt(4).Dane.Typ.ShouldEqual(spodziewanyTypK5); }
public void RzekaSpływającaDoMorzaPrzezKomorkeTworzySięPoprawnie(Podloze podlozeK2, TypKomorki typK2) { var aktualizator = new AktualizatorNastepstwaMapyWysokosci(); IPunkt punktPoczatkowy = _mapa.Komorki.ElementAt(2).Punkt; _mapa.Komorki.ElementAt(1).Dane.Podloze = podlozeK2; _mapa.Komorki.ElementAt(1).Dane.Typ = typK2; IRog brzeg = _mapa.Komorki.ElementAt(0).Rogi.First(); brzeg.Dane.Brzeznosc = BrzeznoscRogu.Brzeg; _mapa.ZastosujPrzetwarzanie(aktualizator); IGeneratorRzeki generatorRzeki = new GeneratorRzeki(punktPoczatkowy); _mapa.ZastosujPrzetwarzanie(generatorRzeki as IPrzetwarzaczMapy); generatorRzeki.UdaloSieUtworzyc.Value.ShouldBeTrue(); _mapa.Rzeki.Count().ShouldEqual(1); _mapa.Rzeki.First().Odcinki.Last().PunktB.ShouldEqual(brzeg.Punkt); _mapa.Rzeki.First().Odcinki.Count.ShouldEqual(2); // k3-r2-r1 _mapa.Komorki.ElementAt(2).Punkt.ZawieraRzeke.ShouldBeTrue(); _mapa.Rogi.ElementAt(1).Punkt.ZawieraRzeke.ShouldBeTrue(); _mapa.Rogi.ElementAt(0).Punkt.ZawieraRzeke.ShouldBeTrue(); }