public void test_czy_element_nie_zawiera_operatu() { var header = new Nagłówek(code: 1234); var element = new ElementMapy(header); Assert.AreEqual(expected: 0, actual: element.Operaty.Count()); }
void ParseRecord(ElementMapy element) { if (IsComment) { return; } if (IsAttribute) { var atrybut = CurrentRecord.ParseAtrybut(); element.DodajAtrybut(atrybut); } else if (IsLabel) { return; } else if (IsPoint) { var punkt = CurrentRecord.ParsePunkt(); element.DodajPunkt(punkt); } else { throw new InvalidOperationException(CurrentRecord); } }
public void test_czy_klasa_2_jest_lokalizowana_przez_dwa_punkty() { var header = new Nagłówek(code: 2345); var element = new ElementMapy(header); var punkt = new PunktOparciaGeoMap(x: 1.2, y: 3.4); element.DodajPunkt(punkt); element.DodajPunkt(punkt); }
public void test_czy_element_zawiera_dodany_id() { var header = new Nagłówek(1234); var element = new ElementMapy(header); var guid = Guid.NewGuid().ToString(); element.DodajAtrybut("ID", guid); Assert.AreEqual(1, element.Atrybuty.Count()); Assert.AreEqual(guid, element.Id); }
public void test_czy_klasa_1_jest_lokalizowana_tylko_przez_jeden_punkt() { var header = new Nagłówek(code: 1234); var element = new ElementMapy(header); var punkt = new PunktOparciaGeoMap(x: 1.2, y: 3.4); element.DodajPunkt(punkt); element.DodajPunkt(punkt); Assert.IsTrue(element.IsInvalid()); }
public void test_czy_element_zawiera_nagłówek() { var header = new Nagłówek(1234); var element = new ElementMapy(header); Assert.IsNotNull(element.Nagłówek); Assert.AreEqual(0, element.Atrybuty.Count()); Assert.AreEqual(0, element.Opisy.Count()); Assert.AreEqual(0, element.Punkty.Count()); Assert.AreEqual(string.Empty, element.Id); }
public void test_czy_mapa_doda_element_klasy_1() { var map = new MapaGeoMap(); var header = new Nagłówek(1111); var element = new ElementMapy(header); var punkt = new PunktOparciaGeoMap(x: 1.2, y: 3.4); element.DodajPunkt(punkt); map.AddElement(element); Assert.AreEqual(1, map.Count()); }
public void test_czy_element_zawiera_dodany_punkt() { var header = new Nagłówek(code: 1234); var element = new ElementMapy(header); element.DodajPunkt(x: 1.2, y: 3.4); Assert.AreEqual(expected: 1, actual: element.Punkty.Count()); var punkt = element.Punkty.Single(); Assert.AreEqual(expected: 1.2, actual: punkt.X); Assert.AreEqual(expected: 3.4, actual: punkt.Y); }
public void test_czy_mapa_zawiera_dodany_taki_sam_id() { var map = new MapaGeoMap(); var header = new Nagłówek(1234); var element = new ElementMapy(header); var guid = Guid.NewGuid().ToString(); var id = new AtrybutOpisowy("ID", guid); element.DodajAtrybut(id); map.AddElement(element); map.AddElement(element); Assert.AreEqual(expected: 2, actual: map.Count()); }
public void test_czy_element_nie_zawiera_operatów() { var atrybut = new AtrybutOpisowy( nazwa: "KR", wartość: "#LIST;"); var header = new Nagłówek(code: 1234); var element = new ElementMapy(header); element.DodajAtrybut(atrybut); var operaty = element.Operaty; Assert.AreEqual(expected: 0, actual: operaty.Count()); }
public static bool IsInvalid(this ElementMapy element) { var klasa = element.Nagłówek.Klasa; var count = element.Punkty.Count(); return(klasa == 1 && count != 1 || klasa == 2 && count != 2 || klasa == 3 && count != 3 || klasa == 4 && count < 2 || klasa == 5 && count < 3 || klasa == 6 && count > 2 || klasa == 7 && count > 2); }
public void test_czy_mapa_wyszuka_taki_sam_id() { var map = new MapaGeoMap(); var header = new Nagłówek(1234); var element = new ElementMapy(header); var guid = Guid.NewGuid().ToString(); var id = new AtrybutOpisowy("ID", guid); element.DodajAtrybut(id); map.AddElement(element); map.AddElement(element); map.Szukaj(guid); Assert.Fail(); }
public void test_czy_element_zawiera_jeden_operat_bez_operatora() { var atrybut = new AtrybutOpisowy( nazwa: "KR", wartość: "123/2016"); var header = new Nagłówek(code: 1234); var element = new ElementMapy(header); element.DodajAtrybut(atrybut); var operaty = element.Operaty; Assert.AreEqual(expected: 1, actual: operaty.Count()); var operat = operaty.Single(); Assert.AreEqual(expected: "123/2016", actual: operat.Numer); }
public static ElementMapy ParseElement(this string headerRecord) { if (string.IsNullOrEmpty(headerRecord)) { throw new ArgumentNullException(); } if (!headerRecord.StartsWith("*")) { throw new ArgumentException("Header record should start with a *"); } //*4366 8388608 26 0.00000000 var headerWithoutStar = headerRecord.Substring(1); var headerSplit = headerWithoutStar.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); if (headerSplit.Count() < 4) { throw new ArgumentException("Header record should have a minimum of 4 arguments"); } var codeString = headerSplit.First(); var header = codeString.ParseHeader(); var element = new ElementMapy(header); return(element); }