XmlService { public SatzXml getSatzart(final int satzart) { SatzXml satz = this.satzarten.get(new SatzTyp(satzart)); if (satz != null) { return new SatzXml(satz); } List<SatzTyp> satzTypen = new ArrayList<>(); for (SatzTyp satzNr : this.satzarten.keySet()) { if (satzNr.getSatzart() == satzart) { satzTypen.add(satzNr); } } if (satzTypen.isEmpty()) { throw new NotRegisteredException(satzart); } if (satzTypen.size() > 1) { checkSatzarten(satzTypen); } return new SatzXml(this.satzarten.get(satzTypen.get(0))); } private  XmlService();  XmlService(final XMLEventReader parser);  XmlService(final XMLEventReader parser, final StartElement startElement); static XmlService getInstance(); static XmlService getInstance(final String resource); static Map<String, FeldXml> parseFelder(final XMLEventReader reader); Map<String, FeldXml> getFelder(); SatzXml getSatzart(final int satzart); SatzXml getSatzart(final SatzTyp satzNr); Map<SatzTyp, SatzXml> getSatzarten();  }
@Test public void testGetSatzart() { SatzXml satz = xmlService.getSatzart(100); assertNotNull(satz); assertEquals(100, satz.getSatzart()); }
@Test(expected = NotRegisteredException.class) public void testGetSatzartNonExisting() { xmlService.getSatzart(451); }
@Test public void testGetSatzartTwice() { SatzXml one = xmlService.getSatzart(100); SatzXml two = xmlService.getSatzart(100); assertEquals(one, two); assertNotSame(one, two); for (int i = 1; i <= one.getNumberOfTeildatensaetze(); i++) { assertEquals(one.getTeildatensatz(i), two.getTeildatensatz(i)); assertNotSame(one.getTeildatensatz(i), two.getTeildatensatz(i)); } one.set(Bezeichner.VERSICHERUNGSSCHEINNUMMER.getName(), "4711"); two.set(Bezeichner.VERSICHERUNGSSCHEINNUMMER.getName(), "4722"); assertEquals("4722", two.get(Bezeichner.VERSICHERUNGSSCHEINNUMMER.getName()).trim()); assertEquals("4711", one.get(Bezeichner.VERSICHERUNGSSCHEINNUMMER.getName()).trim()); }
@Test public void testGetVorsatz() { SatzXml vorsatz = xmlService.getSatzart(1); Feld version = vorsatz.getFeld("Satzart 0100"); assertNotNull(version); }
@Test public void testGetSatzart200() { SatzXml satz200 = xmlService.getSatzart(200); assertEquals(2, satz200.getTeildatensaetze().size()); Feld inkasso = satz200.getFeld(Bezeichner.INKASSOART); assertEquals(1, inkasso.getAnzahlBytes()); assertEquals(43, inkasso.getByteAdresse()); }
@Test public void testSatzart210() throws IOException { SatzXml satzXml = xmlService.getSatzart(210); assertEquals(210, satzXml.getSatzart()); assertNotNull(satzXml.getFeld(Bezeichner.SATZ_NR_1)); }
@Test public void testSatzart211() throws IOException { setUpAndCheckSatz(xmlService.getSatzart(211), new Satz211()); }
@Test public void testSatzart220() throws IOException { setUpAndCheckSatz(xmlService.getSatzart(220), new Satz220()); }
@Test public void testSatzart350() { xmlService.getSatzart(350); }