@Test
public void preformatted() {

    final String content = "" +
            "This option causes rsync to set the group of the destination file to be the\n" +
            "same as the source file. If the receiving program is not running as the super-user\n" +
            "\n" +
            "    for (int i = 0; i < 5; i++) {\n" +
            "      System.out.println(i);\n" +
            "    }" +
            "\n" +
            "The preservation of group information will associate matching names by default, but\n" +
            "may fall back to using the ID number in some circumstances (see also the --numeric-ids\n" +
            "option for a full discussion).";
    final Document document = DocumentParser.parser(content);
    final String actual = Join.join("\n", document.elements);
    assertEquals("" +
            "Paragraph{content='This option causes rsync to set the group of the destination " +
            "file to be the same as the source file. If the receiving program is not running " +
            "as the super-user'}\n" +
            "Preformatted{content='for (int i = 0; i < 5; i++) {\n" +
            "  System.out.println(i);\n" +
            "}'}\n" +
            "Paragraph{content='The preservation of group information will associate matching " +
            "names by default, but may fall back to using the ID number in some circumstances " +
            "(see also the --numeric-ids option for a full discussion).'}", actual);
}