Satz implements Cloneable { public Feld getFeld(final Enum feld) throws IllegalArgumentException { for (int i = 0; i < teildatensatz.length; i++) { try { Feld x = teildatensatz[i].getFeldSafe(feld); if (x != Feld.NULL_FELD) { return x; } } catch (IllegalArgumentException e) { LOG.debug("Feld '{}‘ not found in teildatensatz {}:", feld, i, e); } } throw new IllegalArgumentException("Feld \"" + feld + "\" nicht in " + this.toShortString() + " vorhanden!"); } protected  Satz(final int art); protected  Satz(final String art); protected  Satz(final NumFeld art);  Satz(final NumFeld art, final int n);  Satz(final String content, final int n);  Satz(final int art, final int n);  Satz(final int art, final List<? extends Teildatensatz> tdsList); final List<Teildatensatz> getTeildatensaetze(); final int getNumberOfTeildatensaetze(); final Teildatensatz getTeildatensatz(final int n); final void removeAllTeildatensaetze(); final void removeTeildatensatz(final int n); final void add(final Teildatensatz tds); void add(final Feld feld); void add(final Feld feld, final int teildatensatzNr); void addFiller(); void remove(final String name); void remove(final Bezeichner bezeichner); void set(final String name, final String value); void set(final Bezeichner name, final String value); final void set(final Enum feldX, final String value); final void set(final Enum feldX, final Integer value); final void set(final Enum feldX, final Character value); final String get(final String name); final String get(final Bezeichner bezeichner); final String get(final Enum feldX); Feld getFeld(final Enum feld); Feld getFeldSafe(final Enum feld); Feld containsFeld(final String name); Feld getFeld(final String name); Feld getFeldSafe(final String name); boolean hasFeld(final Bezeichner bezeichner); Feld getFeld(final Bezeichner bezeichner); Feld getFeldSafe(final Bezeichner bezeichner); final String getFeldInhalt(final Bezeichner bezeichner); final Feld getFeld(final Bezeichner bezeichner, final int nr); final Feld getFeld(final String name, final int nr); final String getFeldInhalt(final String name, final int nr); final NumFeld getSatzartFeld(); final int getSatzart(); @JsonIgnore final SatzTyp getSatzTyp(); boolean hasSparte(); boolean hasWagnisart(); boolean hasKrankenFolgeNr(); @JsonIgnore int getSparte(); @JsonIgnore final String getWagnisart(); void export(final Writer writer); void export(final File file); void export(final Writer writer, final String eod); void export(final OutputStream ostream); void importFrom(final String s); void importFrom(final File file); final void importFrom(final InputStream istream); final void importFrom(final Reader reader); void importFrom(final PushbackLineNumberReader reader); static int readSatzart(final PushbackLineNumberReader reader); boolean isValid(); List<ConstraintViolation> validate(); @Override final String toString(); String toShortString(); String toLongString(); @Override boolean equals(final Object obj); @Override int hashCode(); Collection<Feld> getFelder(); static Character readSatznummer(final PushbackReader reader); static char readSatznummer(char[] cbuf); static boolean isNumber(String string); @SuppressWarnings("squid:S2975") @Override Object clone();  }
@Test(expected = IllegalArgumentException.class) public void testGetFeld() { try { satz.getFeld("hemmernet"); fail("IllegalArgumentException bei fehlendem Feld erwartet"); } catch (IllegalArgumentException ex) { assertThat("Exception sollte Bezeichner und Satzart beschreiben", ex.getMessage(), allOf(containsString("Hemmernet"), containsString("Satzart 0123"))); throw ex; } }
@Test(expected = IllegalArgumentException.class) public void testGetFeldBezeichner() { try { satz.getFeld(new Bezeichner("hemmernet")); fail("IllegalArgumentException bei fehlendem Feld erwartet"); } catch (IllegalArgumentException ex) { assertThat("Exception sollte Bezeichner und Satzart beschreiben", ex.getMessage(), allOf(containsString("Hemmernet"), containsString("Satzart 0123"))); throw ex; } }
@Test(expected = IllegalArgumentException.class) public void testGetFeldEnum() { try { satz.getFeld(Feld221Wagnis13ZukSummenaenderungen.ANFAENGLICHE_ERLEBENSFALL_VS_IN_WAEHRUNGSEINHEITEN); fail("IllegalArgumentException bei fehlendem Feld erwartet"); } catch (IllegalArgumentException ex) { assertThat("Exception sollte Bezeichner und Satzart beschreiben", ex.getMessage(), allOf(containsString("ANFAENGLICHE_ERLEBENSFALL_VS_IN_WAEHRUNGSEINHEITEN"), containsString("Satzart 0123"))); throw ex; } }
@Test public void testSatzartInhalt() { Feld satzart = satz.getFeld(Feld1bis7.SATZART); assertEquals("0123", satzart.getInhalt()); }