text:
package fr.jmini.asciidoctorj.testcases;

import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

import org.asciidoctor.OptionsBuilder;
import org.asciidoctor.ast.DescriptionList;
import org.asciidoctor.ast.DescriptionListEntry;
import org.asciidoctor.ast.Document;
import org.asciidoctor.ast.ListItem;

public class ListLabeledNestedMixedTestCase implements AdocTestCase {

    public static final String ASCIIDOC = "" +
            "Operating Systems::\n" +
            "  Linux:::\n" +
            "    . Fedora\n" +
            "      * Desktop\n" +
            "    . Ubuntu\n" +
            "      * Desktop\n" +
            "      * Server\n" +
            "  BSD:::\n" +
            "    . FreeBSD\n" +
            "    . NetBSD\n" +
            "\n" +
            "Cloud Providers::\n" +
            "  PaaS:::\n" +
            "    . OpenShift\n" +
            "    . CloudBees\n" +
            "  IaaS:::\n" +
            "    . Amazon EC2\n" +
            "    . Rackspace";

    @Override
    public String getAdocInput() {
        return ASCIIDOC;
    }

    @Override
    public Map<String, Object> getInputOptions() {
        return OptionsBuilder.options()
                .asMap();
    }

    // tag::expected-html[]
    public static final String EXPECTED_HTML = "" +
            "
\n" +
            "
\n" +
            "
\n" +
            "Operating Systems\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "Linux\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "

Fedora
\n" +
            "
\n" +
            "
\n" +
            "

Desktop

\n" +
            "
\n" +
            "

\n" +
            "

Ubuntu
\n" +
            "
\n" +
            "
\n" +
            "

Desktop

\n" +
            "

Server

\n" +
            "
\n" +
            "

\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "BSD\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "

FreeBSD

\n" +
            "

NetBSD

\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "Cloud Providers\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "PaaS\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "

OpenShift

\n" +
            "

CloudBees

\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "IaaS\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "

Amazon EC2

\n" +
            "

Rackspace

\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
\n" +
            "
";
    // end::expected-html[]

    @Override
    public String getHtmlOutput() {
        return EXPECTED_HTML;
    }

    @Override
    // tag::assert-code[]
    public void checkAst(Document astDocument) {
        Document document1 = astDocument;
        assertThat(document1.getId()).isNull();
        assertThat(document1.getNodeName()).isEqualTo("document");
        assertThat(document1.getParent()).isNull();
        assertThat(document1.getContext()).isEqualTo("document");
        assertThat(document1.getDocument()).isSameAs(document1);
        assertThat(document1.isInline()).isFalse();
        assertThat(document1.isBlock()).isTrue();
        assertThat(document1.getAttributes()).containsEntry("doctype", "article")
                .containsEntry("example-caption", "Example")
                .containsEntry("figure-caption", "Figure")
                .containsEntry("filetype", "html")
                .containsEntry("notitle", "")
                .containsEntry("prewrap", "")
                .containsEntry("table-caption", "Table");
        assertThat(document1.getRoles()).isNullOrEmpty();
        assertThat(document1.isReftext()).isFalse();
        assertThat(document1.getReftext()).isNull();
        assertThat(document1.getCaption()).isNull();
        assertThat(document1.getTitle()).isNull();
        assertThat(document1.getStyle()).isNull();
        assertThat(document1.getLevel()).isEqualTo(0);
        assertThat(document1.getContentModel()).isEqualTo("compound");
        assertThat(document1.getSourceLocation()).isNull();
        assertThat(document1.getSubstitutions()).isNullOrEmpty();
        assertThat(document1.getBlocks()).hasSize(1);
        DescriptionList descriptionList1 = (DescriptionList) document1.getBlocks()
                .get(0);
        assertThat(descriptionList1.getId()).isNull();
        assertThat(descriptionList1.getNodeName()).isEqualTo("dlist");
        assertThat(descriptionList1.getParent()).isSameAs(document1);
        assertThat(descriptionList1.getContext()).isEqualTo("dlist");
        assertThat(descriptionList1.getDocument()).isSameAs(document1);
        assertThat(descriptionList1.isInline()).isFalse();
        assertThat(descriptionList1.isBlock()).isTrue();
        assertThat(descriptionList1.getAttributes()).isNullOrEmpty();
        assertThat(descriptionList1.getRoles()).isNullOrEmpty();
        assertThat(descriptionList1.isReftext()).isFalse();
        assertThat(descriptionList1.getReftext()).isNull();
        assertThat(descriptionList1.getCaption()).isNull();
        assertThat(descriptionList1.getTitle()).isNull();
        assertThat(descriptionList1.getStyle()).isNull();
        assertThat(descriptionList1.getLevel()).isEqualTo(0);
        assertThat(descriptionList1.getContentModel()).isEqualTo("compound");
        assertThat(descriptionList1.getSourceLocation()).isNull();
        assertThat(descriptionList1.getSubstitutions()).isNullOrEmpty();
        assertThat(descriptionList1.getBlocks()).isNullOrEmpty();
        assertThat(descriptionList1.getItems()).hasSize(2);
        DescriptionListEntry descriptionListEntry1 = (DescriptionListEntry) descriptionList1.getItems()
                .get(0);
        ListItem listItem1 = descriptionListEntry1.getDescription();
        assertThat(listItem1.getId()).isNull();
        assertThat(listItem1.getNodeName()).isEqualTo("list_item");
        assertThat(listItem1.getParent()).isSameAs(descriptionList1);
        assertThat(listItem1.getContext()).isEqualTo("list_item");
        assertThat(listItem1.getDocument()).isSameAs(document1);
        assertThat(listItem1.isInline()).isFalse();
        assertThat(listItem1.isBlock()).isTrue();
        assertThat(listItem1.getAttributes()).isNullOrEmpty();
        assertThat(listItem1.getRoles()).isNullOrEmpty();
        assertThat(listItem1.isReftext()).isFalse();
        assertThat(listItem1.getReftext()).isNull();
        assertThat(listItem1.getCaption()).isNull();
        assertThat(listItem1.getTitle()).isNull();
        assertThat(listItem1.getStyle()).isNull();
        assertThat(listItem1.getLevel()).isEqualTo(0);
        assertThat(listItem1.getContentModel()).isEqualTo("compound");
        assertThat(listItem1.getSourceLocation()).isNull();
        assertThat(listItem1.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem1.getBlocks()).hasSize(1);
        DescriptionList descriptionList2 = (DescriptionList) listItem1.getBlocks()
                .get(0);
        assertThat(descriptionList2.getId()).isNull();
        assertThat(descriptionList2.getNodeName()).isEqualTo("dlist");
        assertThat(descriptionList2.getParent()).isSameAs(listItem1);
        assertThat(descriptionList2.getContext()).isEqualTo("dlist");
        assertThat(descriptionList2.getDocument()).isSameAs(document1);
        assertThat(descriptionList2.isInline()).isFalse();
        assertThat(descriptionList2.isBlock()).isTrue();
        assertThat(descriptionList2.getAttributes()).isNullOrEmpty();
        assertThat(descriptionList2.getRoles()).isNullOrEmpty();
        assertThat(descriptionList2.isReftext()).isFalse();
        assertThat(descriptionList2.getReftext()).isNull();
        assertThat(descriptionList2.getCaption()).isNull();
        assertThat(descriptionList2.getTitle()).isNull();
        assertThat(descriptionList2.getStyle()).isNull();
        assertThat(descriptionList2.getLevel()).isEqualTo(0);
        assertThat(descriptionList2.getContentModel()).isEqualTo("compound");
        assertThat(descriptionList2.getSourceLocation()).isNull();
        assertThat(descriptionList2.getSubstitutions()).isNullOrEmpty();
        assertThat(descriptionList2.getBlocks()).isNullOrEmpty();
        assertThat(descriptionList2.getItems()).hasSize(2);
        DescriptionListEntry descriptionListEntry2 = (DescriptionListEntry) descriptionList2.getItems()
                .get(0);
        ListItem listItem2 = descriptionListEntry2.getDescription();
        assertThat(listItem2.getId()).isNull();
        assertThat(listItem2.getNodeName()).isEqualTo("list_item");
        assertThat(listItem2.getParent()).isSameAs(descriptionList2);
        assertThat(listItem2.getContext()).isEqualTo("list_item");
        assertThat(listItem2.getDocument()).isSameAs(document1);
        assertThat(listItem2.isInline()).isFalse();
        assertThat(listItem2.isBlock()).isTrue();
        assertThat(listItem2.getAttributes()).isNullOrEmpty();
        assertThat(listItem2.getRoles()).isNullOrEmpty();
        assertThat(listItem2.isReftext()).isFalse();
        assertThat(listItem2.getReftext()).isNull();
        assertThat(listItem2.getCaption()).isNull();
        assertThat(listItem2.getTitle()).isNull();
        assertThat(listItem2.getStyle()).isNull();
        assertThat(listItem2.getLevel()).isEqualTo(0);
        assertThat(listItem2.getContentModel()).isEqualTo("compound");
        assertThat(listItem2.getSourceLocation()).isNull();
        assertThat(listItem2.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem2.getBlocks()).hasSize(1);
        org.asciidoctor.ast.List list1 = (org.asciidoctor.ast.List) listItem2.getBlocks()
                .get(0);
        assertThat(list1.getId()).isNull();
        assertThat(list1.getNodeName()).isEqualTo("olist");
        assertThat(list1.getParent()).isSameAs(listItem2);
        assertThat(list1.getContext()).isEqualTo("olist");
        assertThat(list1.getDocument()).isSameAs(document1);
        assertThat(list1.isInline()).isFalse();
        assertThat(list1.isBlock()).isTrue();
        assertThat(list1.getAttributes()).containsEntry("style", "arabic");
        assertThat(list1.getRoles()).isNullOrEmpty();
        assertThat(list1.isReftext()).isFalse();
        assertThat(list1.getReftext()).isNull();
        assertThat(list1.getCaption()).isNull();
        assertThat(list1.getTitle()).isNull();
        assertThat(list1.getStyle()).isEqualTo("arabic");
        assertThat(list1.getLevel()).isEqualTo(1);
        assertThat(list1.getContentModel()).isEqualTo("compound");
        assertThat(list1.getSourceLocation()).isNull();
        assertThat(list1.getSubstitutions()).isNullOrEmpty();
        assertThat(list1.getBlocks()).isNullOrEmpty();
        assertThat(list1.getItems()).hasSize(2);
        ListItem listItem3 = (ListItem) list1.getItems()
                .get(0);
        assertThat(listItem3.getId()).isNull();
        assertThat(listItem3.getNodeName()).isEqualTo("list_item");
        assertThat(listItem3.getParent()).isSameAs(list1);
        assertThat(listItem3.getContext()).isEqualTo("list_item");
        assertThat(listItem3.getDocument()).isSameAs(document1);
        assertThat(listItem3.isInline()).isFalse();
        assertThat(listItem3.isBlock()).isTrue();
        assertThat(listItem3.getAttributes()).isNullOrEmpty();
        assertThat(listItem3.getRoles()).isNullOrEmpty();
        assertThat(listItem3.isReftext()).isFalse();
        assertThat(listItem3.getReftext()).isNull();
        assertThat(listItem3.getCaption()).isNull();
        assertThat(listItem3.getTitle()).isNull();
        assertThat(listItem3.getStyle()).isNull();
        assertThat(listItem3.getLevel()).isEqualTo(1);
        assertThat(listItem3.getContentModel()).isEqualTo("compound");
        assertThat(listItem3.getSourceLocation()).isNull();
        assertThat(listItem3.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem3.getBlocks()).hasSize(1);
        org.asciidoctor.ast.List list2 = (org.asciidoctor.ast.List) listItem3.getBlocks()
                .get(0);
        assertThat(list2.getId()).isNull();
        assertThat(list2.getNodeName()).isEqualTo("ulist");
        assertThat(list2.getParent()).isSameAs(listItem3);
        assertThat(list2.getContext()).isEqualTo("ulist");
        assertThat(list2.getDocument()).isSameAs(document1);
        assertThat(list2.isInline()).isFalse();
        assertThat(list2.isBlock()).isTrue();
        assertThat(list2.getAttributes()).isNullOrEmpty();
        assertThat(list2.getRoles()).isNullOrEmpty();
        assertThat(list2.isReftext()).isFalse();
        assertThat(list2.getReftext()).isNull();
        assertThat(list2.getCaption()).isNull();
        assertThat(list2.getTitle()).isNull();
        assertThat(list2.getStyle()).isNull();
        assertThat(list2.getLevel()).isEqualTo(1);
        assertThat(list2.getContentModel()).isEqualTo("compound");
        assertThat(list2.getSourceLocation()).isNull();
        assertThat(list2.getSubstitutions()).isNullOrEmpty();
        assertThat(list2.getBlocks()).isNullOrEmpty();
        assertThat(list2.getItems()).hasSize(1);
        ListItem listItem4 = (ListItem) list2.getItems()
                .get(0);
        assertThat(listItem4.getId()).isNull();
        assertThat(listItem4.getNodeName()).isEqualTo("list_item");
        assertThat(listItem4.getParent()).isSameAs(list2);
        assertThat(listItem4.getContext()).isEqualTo("list_item");
        assertThat(listItem4.getDocument()).isSameAs(document1);
        assertThat(listItem4.isInline()).isFalse();
        assertThat(listItem4.isBlock()).isTrue();
        assertThat(listItem4.getAttributes()).isNullOrEmpty();
        assertThat(listItem4.getRoles()).isNullOrEmpty();
        assertThat(listItem4.isReftext()).isFalse();
        assertThat(listItem4.getReftext()).isNull();
        assertThat(listItem4.getCaption()).isNull();
        assertThat(listItem4.getTitle()).isNull();
        assertThat(listItem4.getStyle()).isNull();
        assertThat(listItem4.getLevel()).isEqualTo(1);
        assertThat(listItem4.getContentModel()).isEqualTo("compound");
        assertThat(listItem4.getSourceLocation()).isNull();
        assertThat(listItem4.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem4.getBlocks()).isNullOrEmpty();
        assertThat(listItem4.getMarker()).isEqualTo("*");
        assertThat(listItem4.getText()).isEqualTo("Desktop");
        assertThat(listItem4.getSource()).isEqualTo("Desktop");
        assertThat(listItem4.hasText()).isTrue();
        assertThat(list2.hasItems()).isTrue();
        assertThat(listItem3.getMarker()).isEqualTo(".");
        assertThat(listItem3.getText()).isEqualTo("Fedora");
        assertThat(listItem3.getSource()).isEqualTo("Fedora");
        assertThat(listItem3.hasText()).isTrue();
        ListItem listItem5 = (ListItem) list1.getItems()
                .get(1);
        assertThat(listItem5.getId()).isNull();
        assertThat(listItem5.getNodeName()).isEqualTo("list_item");
        assertThat(listItem5.getParent()).isSameAs(list1);
        assertThat(listItem5.getContext()).isEqualTo("list_item");
        assertThat(listItem5.getDocument()).isSameAs(document1);
        assertThat(listItem5.isInline()).isFalse();
        assertThat(listItem5.isBlock()).isTrue();
        assertThat(listItem5.getAttributes()).isNullOrEmpty();
        assertThat(listItem5.getRoles()).isNullOrEmpty();
        assertThat(listItem5.isReftext()).isFalse();
        assertThat(listItem5.getReftext()).isNull();
        assertThat(listItem5.getCaption()).isNull();
        assertThat(listItem5.getTitle()).isNull();
        assertThat(listItem5.getStyle()).isNull();
        assertThat(listItem5.getLevel()).isEqualTo(1);
        assertThat(listItem5.getContentModel()).isEqualTo("compound");
        assertThat(listItem5.getSourceLocation()).isNull();
        assertThat(listItem5.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem5.getBlocks()).hasSize(1);
        org.asciidoctor.ast.List list3 = (org.asciidoctor.ast.List) listItem5.getBlocks()
                .get(0);
        assertThat(list3.getId()).isNull();
        assertThat(list3.getNodeName()).isEqualTo("ulist");
        assertThat(list3.getParent()).isSameAs(listItem5);
        assertThat(list3.getContext()).isEqualTo("ulist");
        assertThat(list3.getDocument()).isSameAs(document1);
        assertThat(list3.isInline()).isFalse();
        assertThat(list3.isBlock()).isTrue();
        assertThat(list3.getAttributes()).isNullOrEmpty();
        assertThat(list3.getRoles()).isNullOrEmpty();
        assertThat(list3.isReftext()).isFalse();
        assertThat(list3.getReftext()).isNull();
        assertThat(list3.getCaption()).isNull();
        assertThat(list3.getTitle()).isNull();
        assertThat(list3.getStyle()).isNull();
        assertThat(list3.getLevel()).isEqualTo(1);
        assertThat(list3.getContentModel()).isEqualTo("compound");
        assertThat(list3.getSourceLocation()).isNull();
        assertThat(list3.getSubstitutions()).isNullOrEmpty();
        assertThat(list3.getBlocks()).isNullOrEmpty();
        assertThat(list3.getItems()).hasSize(2);
        ListItem listItem6 = (ListItem) list3.getItems()
                .get(0);
        assertThat(listItem6.getId()).isNull();
        assertThat(listItem6.getNodeName()).isEqualTo("list_item");
        assertThat(listItem6.getParent()).isSameAs(list3);
        assertThat(listItem6.getContext()).isEqualTo("list_item");
        assertThat(listItem6.getDocument()).isSameAs(document1);
        assertThat(listItem6.isInline()).isFalse();
        assertThat(listItem6.isBlock()).isTrue();
        assertThat(listItem6.getAttributes()).isNullOrEmpty();
        assertThat(listItem6.getRoles()).isNullOrEmpty();
        assertThat(listItem6.isReftext()).isFalse();
        assertThat(listItem6.getReftext()).isNull();
        assertThat(listItem6.getCaption()).isNull();
        assertThat(listItem6.getTitle()).isNull();
        assertThat(listItem6.getStyle()).isNull();
        assertThat(listItem6.getLevel()).isEqualTo(1);
        assertThat(listItem6.getContentModel()).isEqualTo("compound");
        assertThat(listItem6.getSourceLocation()).isNull();
        assertThat(listItem6.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem6.getBlocks()).isNullOrEmpty();
        assertThat(listItem6.getMarker()).isEqualTo("*");
        assertThat(listItem6.getText()).isEqualTo("Desktop");
        assertThat(listItem6.getSource()).isEqualTo("Desktop");
        assertThat(listItem6.hasText()).isTrue();
        ListItem listItem7 = (ListItem) list3.getItems()
                .get(1);
        assertThat(listItem7.getId()).isNull();
        assertThat(listItem7.getNodeName()).isEqualTo("list_item");
        assertThat(listItem7.getParent()).isSameAs(list3);
        assertThat(listItem7.getContext()).isEqualTo("list_item");
        assertThat(listItem7.getDocument()).isSameAs(document1);
        assertThat(listItem7.isInline()).isFalse();
        assertThat(listItem7.isBlock()).isTrue();
        assertThat(listItem7.getAttributes()).isNullOrEmpty();
        assertThat(listItem7.getRoles()).isNullOrEmpty();
        assertThat(listItem7.isReftext()).isFalse();
        assertThat(listItem7.getReftext()).isNull();
        assertThat(listItem7.getCaption()).isNull();
        assertThat(listItem7.getTitle()).isNull();
        assertThat(listItem7.getStyle()).isNull();
        assertThat(listItem7.getLevel()).isEqualTo(1);
        assertThat(listItem7.getContentModel()).isEqualTo("compound");
        assertThat(listItem7.getSourceLocation()).isNull();
        assertThat(listItem7.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem7.getBlocks()).isNullOrEmpty();
        assertThat(listItem7.getMarker()).isEqualTo("*");
        assertThat(listItem7.getText()).isEqualTo("Server");
        assertThat(listItem7.getSource()).isEqualTo("Server");
        assertThat(listItem7.hasText()).isTrue();
        assertThat(list3.hasItems()).isTrue();
        assertThat(listItem5.getMarker()).isEqualTo(".");
        assertThat(listItem5.getText()).isEqualTo("Ubuntu");
        assertThat(listItem5.getSource()).isEqualTo("Ubuntu");
        assertThat(listItem5.hasText()).isTrue();
        assertThat(list1.hasItems()).isTrue();
        assertThat(listItem2.getMarker()).isNull();
        assertThat(listItem2.getSource()).isNull();
        assertThat(listItem2.hasText()).isFalse();
        assertThat(descriptionListEntry2.getTerms()).hasSize(1);
        ListItem listItem8 = (ListItem) descriptionListEntry2.getTerms()
                .get(0);
        assertThat(listItem8.getId()).isNull();
        assertThat(listItem8.getNodeName()).isEqualTo("list_item");
        assertThat(listItem8.getParent()).isSameAs(descriptionList2);
        assertThat(listItem8.getContext()).isEqualTo("list_item");
        assertThat(listItem8.getDocument()).isSameAs(document1);
        assertThat(listItem8.isInline()).isFalse();
        assertThat(listItem8.isBlock()).isTrue();
        assertThat(listItem8.getAttributes()).isNullOrEmpty();
        assertThat(listItem8.getRoles()).isNullOrEmpty();
        assertThat(listItem8.isReftext()).isFalse();
        assertThat(listItem8.getReftext()).isNull();
        assertThat(listItem8.getCaption()).isNull();
        assertThat(listItem8.getTitle()).isNull();
        assertThat(listItem8.getStyle()).isNull();
        assertThat(listItem8.getLevel()).isEqualTo(0);
        assertThat(listItem8.getContentModel()).isEqualTo("compound");
        assertThat(listItem8.getSourceLocation()).isNull();
        assertThat(listItem8.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem8.getBlocks()).isNullOrEmpty();
        assertThat(listItem8.getMarker()).isNull();
        assertThat(listItem8.getText()).isEqualTo("Linux");
        assertThat(listItem8.getSource()).isEqualTo("Linux");
        assertThat(listItem8.hasText()).isTrue();
        DescriptionListEntry descriptionListEntry3 = (DescriptionListEntry) descriptionList2.getItems()
                .get(1);
        ListItem listItem9 = descriptionListEntry3.getDescription();
        assertThat(listItem9.getId()).isNull();
        assertThat(listItem9.getNodeName()).isEqualTo("list_item");
        assertThat(listItem9.getParent()).isSameAs(descriptionList2);
        assertThat(listItem9.getContext()).isEqualTo("list_item");
        assertThat(listItem9.getDocument()).isSameAs(document1);
        assertThat(listItem9.isInline()).isFalse();
        assertThat(listItem9.isBlock()).isTrue();
        assertThat(listItem9.getAttributes()).isNullOrEmpty();
        assertThat(listItem9.getRoles()).isNullOrEmpty();
        assertThat(listItem9.isReftext()).isFalse();
        assertThat(listItem9.getReftext()).isNull();
        assertThat(listItem9.getCaption()).isNull();
        assertThat(listItem9.getTitle()).isNull();
        assertThat(listItem9.getStyle()).isNull();
        assertThat(listItem9.getLevel()).isEqualTo(0);
        assertThat(listItem9.getContentModel()).isEqualTo("compound");
        assertThat(listItem9.getSourceLocation()).isNull();
        assertThat(listItem9.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem9.getBlocks()).hasSize(1);
        org.asciidoctor.ast.List list4 = (org.asciidoctor.ast.List) listItem9.getBlocks()
                .get(0);
        assertThat(list4.getId()).isNull();
        assertThat(list4.getNodeName()).isEqualTo("olist");
        assertThat(list4.getParent()).isSameAs(listItem9);
        assertThat(list4.getContext()).isEqualTo("olist");
        assertThat(list4.getDocument()).isSameAs(document1);
        assertThat(list4.isInline()).isFalse();
        assertThat(list4.isBlock()).isTrue();
        assertThat(list4.getAttributes()).containsEntry("style", "arabic");
        assertThat(list4.getRoles()).isNullOrEmpty();
        assertThat(list4.isReftext()).isFalse();
        assertThat(list4.getReftext()).isNull();
        assertThat(list4.getCaption()).isNull();
        assertThat(list4.getTitle()).isNull();
        assertThat(list4.getStyle()).isEqualTo("arabic");
        assertThat(list4.getLevel()).isEqualTo(1);
        assertThat(list4.getContentModel()).isEqualTo("compound");
        assertThat(list4.getSourceLocation()).isNull();
        assertThat(list4.getSubstitutions()).isNullOrEmpty();
        assertThat(list4.getBlocks()).isNullOrEmpty();
        assertThat(list4.getItems()).hasSize(2);
        ListItem listItem10 = (ListItem) list4.getItems()
                .get(0);
        assertThat(listItem10.getId()).isNull();
        assertThat(listItem10.getNodeName()).isEqualTo("list_item");
        assertThat(listItem10.getParent()).isSameAs(list4);
        assertThat(listItem10.getContext()).isEqualTo("list_item");
        assertThat(listItem10.getDocument()).isSameAs(document1);
        assertThat(listItem10.isInline()).isFalse();
        assertThat(listItem10.isBlock()).isTrue();
        assertThat(listItem10.getAttributes()).isNullOrEmpty();
        assertThat(listItem10.getRoles()).isNullOrEmpty();
        assertThat(listItem10.isReftext()).isFalse();
        assertThat(listItem10.getReftext()).isNull();
        assertThat(listItem10.getCaption()).isNull();
        assertThat(listItem10.getTitle()).isNull();
        assertThat(listItem10.getStyle()).isNull();
        assertThat(listItem10.getLevel()).isEqualTo(1);
        assertThat(listItem10.getContentModel()).isEqualTo("compound");
        assertThat(listItem10.getSourceLocation()).isNull();
        assertThat(listItem10.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem10.getBlocks()).isNullOrEmpty();
        assertThat(listItem10.getMarker()).isEqualTo(".");
        assertThat(listItem10.getText()).isEqualTo("FreeBSD");
        assertThat(listItem10.getSource()).isEqualTo("FreeBSD");
        assertThat(listItem10.hasText()).isTrue();
        ListItem listItem11 = (ListItem) list4.getItems()
                .get(1);
        assertThat(listItem11.getId()).isNull();
        assertThat(listItem11.getNodeName()).isEqualTo("list_item");
        assertThat(listItem11.getParent()).isSameAs(list4);
        assertThat(listItem11.getContext()).isEqualTo("list_item");
        assertThat(listItem11.getDocument()).isSameAs(document1);
        assertThat(listItem11.isInline()).isFalse();
        assertThat(listItem11.isBlock()).isTrue();
        assertThat(listItem11.getAttributes()).isNullOrEmpty();
        assertThat(listItem11.getRoles()).isNullOrEmpty();
        assertThat(listItem11.isReftext()).isFalse();
        assertThat(listItem11.getReftext()).isNull();
        assertThat(listItem11.getCaption()).isNull();
        assertThat(listItem11.getTitle()).isNull();
        assertThat(listItem11.getStyle()).isNull();
        assertThat(listItem11.getLevel()).isEqualTo(1);
        assertThat(listItem11.getContentModel()).isEqualTo("compound");
        assertThat(listItem11.getSourceLocation()).isNull();
        assertThat(listItem11.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem11.getBlocks()).isNullOrEmpty();
        assertThat(listItem11.getMarker()).isEqualTo(".");
        assertThat(listItem11.getText()).isEqualTo("NetBSD");
        assertThat(listItem11.getSource()).isEqualTo("NetBSD");
        assertThat(listItem11.hasText()).isTrue();
        assertThat(list4.hasItems()).isTrue();
        assertThat(listItem9.getMarker()).isNull();
        assertThat(listItem9.getSource()).isNull();
        assertThat(listItem9.hasText()).isFalse();
        assertThat(descriptionListEntry3.getTerms()).hasSize(1);
        ListItem listItem12 = (ListItem) descriptionListEntry3.getTerms()
                .get(0);
        assertThat(listItem12.getId()).isNull();
        assertThat(listItem12.getNodeName()).isEqualTo("list_item");
        assertThat(listItem12.getParent()).isSameAs(descriptionList2);
        assertThat(listItem12.getContext()).isEqualTo("list_item");
        assertThat(listItem12.getDocument()).isSameAs(document1);
        assertThat(listItem12.isInline()).isFalse();
        assertThat(listItem12.isBlock()).isTrue();
        assertThat(listItem12.getAttributes()).isNullOrEmpty();
        assertThat(listItem12.getRoles()).isNullOrEmpty();
        assertThat(listItem12.isReftext()).isFalse();
        assertThat(listItem12.getReftext()).isNull();
        assertThat(listItem12.getCaption()).isNull();
        assertThat(listItem12.getTitle()).isNull();
        assertThat(listItem12.getStyle()).isNull();
        assertThat(listItem12.getLevel()).isEqualTo(0);
        assertThat(listItem12.getContentModel()).isEqualTo("compound");
        assertThat(listItem12.getSourceLocation()).isNull();
        assertThat(listItem12.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem12.getBlocks()).isNullOrEmpty();
        assertThat(listItem12.getMarker()).isNull();
        assertThat(listItem12.getText()).isEqualTo("BSD");
        assertThat(listItem12.getSource()).isEqualTo("BSD");
        assertThat(listItem12.hasText()).isTrue();
        assertThat(listItem1.getMarker()).isNull();
        assertThat(listItem1.getSource()).isNull();
        assertThat(listItem1.hasText()).isFalse();
        assertThat(descriptionListEntry1.getTerms()).hasSize(1);
        ListItem listItem13 = (ListItem) descriptionListEntry1.getTerms()
                .get(0);
        assertThat(listItem13.getId()).isNull();
        assertThat(listItem13.getNodeName()).isEqualTo("list_item");
        assertThat(listItem13.getParent()).isSameAs(descriptionList1);
        assertThat(listItem13.getContext()).isEqualTo("list_item");
        assertThat(listItem13.getDocument()).isSameAs(document1);
        assertThat(listItem13.isInline()).isFalse();
        assertThat(listItem13.isBlock()).isTrue();
        assertThat(listItem13.getAttributes()).isNullOrEmpty();
        assertThat(listItem13.getRoles()).isNullOrEmpty();
        assertThat(listItem13.isReftext()).isFalse();
        assertThat(listItem13.getReftext()).isNull();
        assertThat(listItem13.getCaption()).isNull();
        assertThat(listItem13.getTitle()).isNull();
        assertThat(listItem13.getStyle()).isNull();
        assertThat(listItem13.getLevel()).isEqualTo(0);
        assertThat(listItem13.getContentModel()).isEqualTo("compound");
        assertThat(listItem13.getSourceLocation()).isNull();
        assertThat(listItem13.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem13.getBlocks()).isNullOrEmpty();
        assertThat(listItem13.getMarker()).isNull();
        assertThat(listItem13.getText()).isEqualTo("Operating Systems");
        assertThat(listItem13.getSource()).isEqualTo("Operating Systems");
        assertThat(listItem13.hasText()).isTrue();
        DescriptionListEntry descriptionListEntry4 = (DescriptionListEntry) descriptionList1.getItems()
                .get(1);
        ListItem listItem14 = descriptionListEntry4.getDescription();
        assertThat(listItem14.getId()).isNull();
        assertThat(listItem14.getNodeName()).isEqualTo("list_item");
        assertThat(listItem14.getParent()).isSameAs(descriptionList1);
        assertThat(listItem14.getContext()).isEqualTo("list_item");
        assertThat(listItem14.getDocument()).isSameAs(document1);
        assertThat(listItem14.isInline()).isFalse();
        assertThat(listItem14.isBlock()).isTrue();
        assertThat(listItem14.getAttributes()).isNullOrEmpty();
        assertThat(listItem14.getRoles()).isNullOrEmpty();
        assertThat(listItem14.isReftext()).isFalse();
        assertThat(listItem14.getReftext()).isNull();
        assertThat(listItem14.getCaption()).isNull();
        assertThat(listItem14.getTitle()).isNull();
        assertThat(listItem14.getStyle()).isNull();
        assertThat(listItem14.getLevel()).isEqualTo(0);
        assertThat(listItem14.getContentModel()).isEqualTo("compound");
        assertThat(listItem14.getSourceLocation()).isNull();
        assertThat(listItem14.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem14.getBlocks()).hasSize(1);
        DescriptionList descriptionList3 = (DescriptionList) listItem14.getBlocks()
                .get(0);
        assertThat(descriptionList3.getId()).isNull();
        assertThat(descriptionList3.getNodeName()).isEqualTo("dlist");
        assertThat(descriptionList3.getParent()).isSameAs(listItem14);
        assertThat(descriptionList3.getContext()).isEqualTo("dlist");
        assertThat(descriptionList3.getDocument()).isSameAs(document1);
        assertThat(descriptionList3.isInline()).isFalse();
        assertThat(descriptionList3.isBlock()).isTrue();
        assertThat(descriptionList3.getAttributes()).isNullOrEmpty();
        assertThat(descriptionList3.getRoles()).isNullOrEmpty();
        assertThat(descriptionList3.isReftext()).isFalse();
        assertThat(descriptionList3.getReftext()).isNull();
        assertThat(descriptionList3.getCaption()).isNull();
        assertThat(descriptionList3.getTitle()).isNull();
        assertThat(descriptionList3.getStyle()).isNull();
        assertThat(descriptionList3.getLevel()).isEqualTo(0);
        assertThat(descriptionList3.getContentModel()).isEqualTo("compound");
        assertThat(descriptionList3.getSourceLocation()).isNull();
        assertThat(descriptionList3.getSubstitutions()).isNullOrEmpty();
        assertThat(descriptionList3.getBlocks()).isNullOrEmpty();
        assertThat(descriptionList3.getItems()).hasSize(2);
        DescriptionListEntry descriptionListEntry5 = (DescriptionListEntry) descriptionList3.getItems()
                .get(0);
        ListItem listItem15 = descriptionListEntry5.getDescription();
        assertThat(listItem15.getId()).isNull();
        assertThat(listItem15.getNodeName()).isEqualTo("list_item");
        assertThat(listItem15.getParent()).isSameAs(descriptionList3);
        assertThat(listItem15.getContext()).isEqualTo("list_item");
        assertThat(listItem15.getDocument()).isSameAs(document1);
        assertThat(listItem15.isInline()).isFalse();
        assertThat(listItem15.isBlock()).isTrue();
        assertThat(listItem15.getAttributes()).isNullOrEmpty();
        assertThat(listItem15.getRoles()).isNullOrEmpty();
        assertThat(listItem15.isReftext()).isFalse();
        assertThat(listItem15.getReftext()).isNull();
        assertThat(listItem15.getCaption()).isNull();
        assertThat(listItem15.getTitle()).isNull();
        assertThat(listItem15.getStyle()).isNull();
        assertThat(listItem15.getLevel()).isEqualTo(0);
        assertThat(listItem15.getContentModel()).isEqualTo("compound");
        assertThat(listItem15.getSourceLocation()).isNull();
        assertThat(listItem15.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem15.getBlocks()).hasSize(1);
        org.asciidoctor.ast.List list5 = (org.asciidoctor.ast.List) listItem15.getBlocks()
                .get(0);
        assertThat(list5.getId()).isNull();
        assertThat(list5.getNodeName()).isEqualTo("olist");
        assertThat(list5.getParent()).isSameAs(listItem15);
        assertThat(list5.getContext()).isEqualTo("olist");
        assertThat(list5.getDocument()).isSameAs(document1);
        assertThat(list5.isInline()).isFalse();
        assertThat(list5.isBlock()).isTrue();
        assertThat(list5.getAttributes()).containsEntry("style", "arabic");
        assertThat(list5.getRoles()).isNullOrEmpty();
        assertThat(list5.isReftext()).isFalse();
        assertThat(list5.getReftext()).isNull();
        assertThat(list5.getCaption()).isNull();
        assertThat(list5.getTitle()).isNull();
        assertThat(list5.getStyle()).isEqualTo("arabic");
        assertThat(list5.getLevel()).isEqualTo(1);
        assertThat(list5.getContentModel()).isEqualTo("compound");
        assertThat(list5.getSourceLocation()).isNull();
        assertThat(list5.getSubstitutions()).isNullOrEmpty();
        assertThat(list5.getBlocks()).isNullOrEmpty();
        assertThat(list5.getItems()).hasSize(2);
        ListItem listItem16 = (ListItem) list5.getItems()
                .get(0);
        assertThat(listItem16.getId()).isNull();
        assertThat(listItem16.getNodeName()).isEqualTo("list_item");
        assertThat(listItem16.getParent()).isSameAs(list5);
        assertThat(listItem16.getContext()).isEqualTo("list_item");
        assertThat(listItem16.getDocument()).isSameAs(document1);
        assertThat(listItem16.isInline()).isFalse();
        assertThat(listItem16.isBlock()).isTrue();
        assertThat(listItem16.getAttributes()).isNullOrEmpty();
        assertThat(listItem16.getRoles()).isNullOrEmpty();
        assertThat(listItem16.isReftext()).isFalse();
        assertThat(listItem16.getReftext()).isNull();
        assertThat(listItem16.getCaption()).isNull();
        assertThat(listItem16.getTitle()).isNull();
        assertThat(listItem16.getStyle()).isNull();
        assertThat(listItem16.getLevel()).isEqualTo(1);
        assertThat(listItem16.getContentModel()).isEqualTo("compound");
        assertThat(listItem16.getSourceLocation()).isNull();
        assertThat(listItem16.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem16.getBlocks()).isNullOrEmpty();
        assertThat(listItem16.getMarker()).isEqualTo(".");
        assertThat(listItem16.getText()).isEqualTo("OpenShift");
        assertThat(listItem16.getSource()).isEqualTo("OpenShift");
        assertThat(listItem16.hasText()).isTrue();
        ListItem listItem17 = (ListItem) list5.getItems()
                .get(1);
        assertThat(listItem17.getId()).isNull();
        assertThat(listItem17.getNodeName()).isEqualTo("list_item");
        assertThat(listItem17.getParent()).isSameAs(list5);
        assertThat(listItem17.getContext()).isEqualTo("list_item");
        assertThat(listItem17.getDocument()).isSameAs(document1);
        assertThat(listItem17.isInline()).isFalse();
        assertThat(listItem17.isBlock()).isTrue();
        assertThat(listItem17.getAttributes()).isNullOrEmpty();
        assertThat(listItem17.getRoles()).isNullOrEmpty();
        assertThat(listItem17.isReftext()).isFalse();
        assertThat(listItem17.getReftext()).isNull();
        assertThat(listItem17.getCaption()).isNull();
        assertThat(listItem17.getTitle()).isNull();
        assertThat(listItem17.getStyle()).isNull();
        assertThat(listItem17.getLevel()).isEqualTo(1);
        assertThat(listItem17.getContentModel()).isEqualTo("compound");
        assertThat(listItem17.getSourceLocation()).isNull();
        assertThat(listItem17.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem17.getBlocks()).isNullOrEmpty();
        assertThat(listItem17.getMarker()).isEqualTo(".");
        assertThat(listItem17.getText()).isEqualTo("CloudBees");
        assertThat(listItem17.getSource()).isEqualTo("CloudBees");
        assertThat(listItem17.hasText()).isTrue();
        assertThat(list5.hasItems()).isTrue();
        assertThat(listItem15.getMarker()).isNull();
        assertThat(listItem15.getSource()).isNull();
        assertThat(listItem15.hasText()).isFalse();
        assertThat(descriptionListEntry5.getTerms()).hasSize(1);
        ListItem listItem18 = (ListItem) descriptionListEntry5.getTerms()
                .get(0);
        assertThat(listItem18.getId()).isNull();
        assertThat(listItem18.getNodeName()).isEqualTo("list_item");
        assertThat(listItem18.getParent()).isSameAs(descriptionList3);
        assertThat(listItem18.getContext()).isEqualTo("list_item");
        assertThat(listItem18.getDocument()).isSameAs(document1);
        assertThat(listItem18.isInline()).isFalse();
        assertThat(listItem18.isBlock()).isTrue();
        assertThat(listItem18.getAttributes()).isNullOrEmpty();
        assertThat(listItem18.getRoles()).isNullOrEmpty();
        assertThat(listItem18.isReftext()).isFalse();
        assertThat(listItem18.getReftext()).isNull();
        assertThat(listItem18.getCaption()).isNull();
        assertThat(listItem18.getTitle()).isNull();
        assertThat(listItem18.getStyle()).isNull();
        assertThat(listItem18.getLevel()).isEqualTo(0);
        assertThat(listItem18.getContentModel()).isEqualTo("compound");
        assertThat(listItem18.getSourceLocation()).isNull();
        assertThat(listItem18.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem18.getBlocks()).isNullOrEmpty();
        assertThat(listItem18.getMarker()).isNull();
        assertThat(listItem18.getText()).isEqualTo("PaaS");
        assertThat(listItem18.getSource()).isEqualTo("PaaS");
        assertThat(listItem18.hasText()).isTrue();
        DescriptionListEntry descriptionListEntry6 = (DescriptionListEntry) descriptionList3.getItems()
                .get(1);
        ListItem listItem19 = descriptionListEntry6.getDescription();
        assertThat(listItem19.getId()).isNull();
        assertThat(listItem19.getNodeName()).isEqualTo("list_item");
        assertThat(listItem19.getParent()).isSameAs(descriptionList3);
        assertThat(listItem19.getContext()).isEqualTo("list_item");
        assertThat(listItem19.getDocument()).isSameAs(document1);
        assertThat(listItem19.isInline()).isFalse();
        assertThat(listItem19.isBlock()).isTrue();
        assertThat(listItem19.getAttributes()).isNullOrEmpty();
        assertThat(listItem19.getRoles()).isNullOrEmpty();
        assertThat(listItem19.isReftext()).isFalse();
        assertThat(listItem19.getReftext()).isNull();
        assertThat(listItem19.getCaption()).isNull();
        assertThat(listItem19.getTitle()).isNull();
        assertThat(listItem19.getStyle()).isNull();
        assertThat(listItem19.getLevel()).isEqualTo(0);
        assertThat(listItem19.getContentModel()).isEqualTo("compound");
        assertThat(listItem19.getSourceLocation()).isNull();
        assertThat(listItem19.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem19.getBlocks()).hasSize(1);
        org.asciidoctor.ast.List list6 = (org.asciidoctor.ast.List) listItem19.getBlocks()
                .get(0);
        assertThat(list6.getId()).isNull();
        assertThat(list6.getNodeName()).isEqualTo("olist");
        assertThat(list6.getParent()).isSameAs(listItem19);
        assertThat(list6.getContext()).isEqualTo("olist");
        assertThat(list6.getDocument()).isSameAs(document1);
        assertThat(list6.isInline()).isFalse();
        assertThat(list6.isBlock()).isTrue();
        assertThat(list6.getAttributes()).containsEntry("style", "arabic");
        assertThat(list6.getRoles()).isNullOrEmpty();
        assertThat(list6.isReftext()).isFalse();
        assertThat(list6.getReftext()).isNull();
        assertThat(list6.getCaption()).isNull();
        assertThat(list6.getTitle()).isNull();
        assertThat(list6.getStyle()).isEqualTo("arabic");
        assertThat(list6.getLevel()).isEqualTo(1);
        assertThat(list6.getContentModel()).isEqualTo("compound");
        assertThat(list6.getSourceLocation()).isNull();
        assertThat(list6.getSubstitutions()).isNullOrEmpty();
        assertThat(list6.getBlocks()).isNullOrEmpty();
        assertThat(list6.getItems()).hasSize(2);
        ListItem listItem20 = (ListItem) list6.getItems()
                .get(0);
        assertThat(listItem20.getId()).isNull();
        assertThat(listItem20.getNodeName()).isEqualTo("list_item");
        assertThat(listItem20.getParent()).isSameAs(list6);
        assertThat(listItem20.getContext()).isEqualTo("list_item");
        assertThat(listItem20.getDocument()).isSameAs(document1);
        assertThat(listItem20.isInline()).isFalse();
        assertThat(listItem20.isBlock()).isTrue();
        assertThat(listItem20.getAttributes()).isNullOrEmpty();
        assertThat(listItem20.getRoles()).isNullOrEmpty();
        assertThat(listItem20.isReftext()).isFalse();
        assertThat(listItem20.getReftext()).isNull();
        assertThat(listItem20.getCaption()).isNull();
        assertThat(listItem20.getTitle()).isNull();
        assertThat(listItem20.getStyle()).isNull();
        assertThat(listItem20.getLevel()).isEqualTo(1);
        assertThat(listItem20.getContentModel()).isEqualTo("compound");
        assertThat(listItem20.getSourceLocation()).isNull();
        assertThat(listItem20.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem20.getBlocks()).isNullOrEmpty();
        assertThat(listItem20.getMarker()).isEqualTo(".");
        assertThat(listItem20.getText()).isEqualTo("Amazon EC2");
        assertThat(listItem20.getSource()).isEqualTo("Amazon EC2");
        assertThat(listItem20.hasText()).isTrue();
        ListItem listItem21 = (ListItem) list6.getItems()
                .get(1);
        assertThat(listItem21.getId()).isNull();
        assertThat(listItem21.getNodeName()).isEqualTo("list_item");
        assertThat(listItem21.getParent()).isSameAs(list6);
        assertThat(listItem21.getContext()).isEqualTo("list_item");
        assertThat(listItem21.getDocument()).isSameAs(document1);
        assertThat(listItem21.isInline()).isFalse();
        assertThat(listItem21.isBlock()).isTrue();
        assertThat(listItem21.getAttributes()).isNullOrEmpty();
        assertThat(listItem21.getRoles()).isNullOrEmpty();
        assertThat(listItem21.isReftext()).isFalse();
        assertThat(listItem21.getReftext()).isNull();
        assertThat(listItem21.getCaption()).isNull();
        assertThat(listItem21.getTitle()).isNull();
        assertThat(listItem21.getStyle()).isNull();
        assertThat(listItem21.getLevel()).isEqualTo(1);
        assertThat(listItem21.getContentModel()).isEqualTo("compound");
        assertThat(listItem21.getSourceLocation()).isNull();
        assertThat(listItem21.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem21.getBlocks()).isNullOrEmpty();
        assertThat(listItem21.getMarker()).isEqualTo(".");
        assertThat(listItem21.getText()).isEqualTo("Rackspace");
        assertThat(listItem21.getSource()).isEqualTo("Rackspace");
        assertThat(listItem21.hasText()).isTrue();
        assertThat(list6.hasItems()).isTrue();
        assertThat(listItem19.getMarker()).isNull();
        assertThat(listItem19.getSource()).isNull();
        assertThat(listItem19.hasText()).isFalse();
        assertThat(descriptionListEntry6.getTerms()).hasSize(1);
        ListItem listItem22 = (ListItem) descriptionListEntry6.getTerms()
                .get(0);
        assertThat(listItem22.getId()).isNull();
        assertThat(listItem22.getNodeName()).isEqualTo("list_item");
        assertThat(listItem22.getParent()).isSameAs(descriptionList3);
        assertThat(listItem22.getContext()).isEqualTo("list_item");
        assertThat(listItem22.getDocument()).isSameAs(document1);
        assertThat(listItem22.isInline()).isFalse();
        assertThat(listItem22.isBlock()).isTrue();
        assertThat(listItem22.getAttributes()).isNullOrEmpty();
        assertThat(listItem22.getRoles()).isNullOrEmpty();
        assertThat(listItem22.isReftext()).isFalse();
        assertThat(listItem22.getReftext()).isNull();
        assertThat(listItem22.getCaption()).isNull();
        assertThat(listItem22.getTitle()).isNull();
        assertThat(listItem22.getStyle()).isNull();
        assertThat(listItem22.getLevel()).isEqualTo(0);
        assertThat(listItem22.getContentModel()).isEqualTo("compound");
        assertThat(listItem22.getSourceLocation()).isNull();
        assertThat(listItem22.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem22.getBlocks()).isNullOrEmpty();
        assertThat(listItem22.getMarker()).isNull();
        assertThat(listItem22.getText()).isEqualTo("IaaS");
        assertThat(listItem22.getSource()).isEqualTo("IaaS");
        assertThat(listItem22.hasText()).isTrue();
        assertThat(listItem14.getMarker()).isNull();
        assertThat(listItem14.getSource()).isNull();
        assertThat(listItem14.hasText()).isFalse();
        assertThat(descriptionListEntry4.getTerms()).hasSize(1);
        ListItem listItem23 = (ListItem) descriptionListEntry4.getTerms()
                .get(0);
        assertThat(listItem23.getId()).isNull();
        assertThat(listItem23.getNodeName()).isEqualTo("list_item");
        assertThat(listItem23.getParent()).isSameAs(descriptionList1);
        assertThat(listItem23.getContext()).isEqualTo("list_item");
        assertThat(listItem23.getDocument()).isSameAs(document1);
        assertThat(listItem23.isInline()).isFalse();
        assertThat(listItem23.isBlock()).isTrue();
        assertThat(listItem23.getAttributes()).isNullOrEmpty();
        assertThat(listItem23.getRoles()).isNullOrEmpty();
        assertThat(listItem23.isReftext()).isFalse();
        assertThat(listItem23.getReftext()).isNull();
        assertThat(listItem23.getCaption()).isNull();
        assertThat(listItem23.getTitle()).isNull();
        assertThat(listItem23.getStyle()).isNull();
        assertThat(listItem23.getLevel()).isEqualTo(0);
        assertThat(listItem23.getContentModel()).isEqualTo("compound");
        assertThat(listItem23.getSourceLocation()).isNull();
        assertThat(listItem23.getSubstitutions()).containsExactly("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements");
        assertThat(listItem23.getBlocks()).isNullOrEmpty();
        assertThat(listItem23.getMarker()).isNull();
        assertThat(listItem23.getText()).isEqualTo("Cloud Providers");
        assertThat(listItem23.getSource()).isEqualTo("Cloud Providers");
        assertThat(listItem23.hasText()).isTrue();
        assertThat(document1.getStructuredDoctitle()).isNull();
        assertThat(document1.getDoctitle()).isNull();
        assertThat(document1.getOptions()).containsEntry("header_footer", false);
    }
    // end::assert-code[]

    @Override
    // tag::mock-code[]
    public Document createMock() {
        Document mockDocument1 = mock(Document.class);
        when(mockDocument1.getId()).thenReturn(null);
        when(mockDocument1.getNodeName()).thenReturn("document");
        when(mockDocument1.getParent()).thenReturn(null);
        when(mockDocument1.getContext()).thenReturn("document");
        when(mockDocument1.getDocument()).thenReturn(mockDocument1);
        when(mockDocument1.isInline()).thenReturn(false);
        when(mockDocument1.isBlock()).thenReturn(true);
        Map<String, Object> map1 = new HashMap<>();
        map1.put("doctype", "article");
        map1.put("example-caption", "Example");
        map1.put("figure-caption", "Figure");
        map1.put("filetype", "html");
        map1.put("notitle", "");
        map1.put("prewrap", "");
        map1.put("table-caption", "Table");
        when(mockDocument1.getAttributes()).thenReturn(map1);
        when(mockDocument1.getRoles()).thenReturn(Collections.emptyList());
        when(mockDocument1.isReftext()).thenReturn(false);
        when(mockDocument1.getReftext()).thenReturn(null);
        when(mockDocument1.getCaption()).thenReturn(null);
        when(mockDocument1.getTitle()).thenReturn(null);
        when(mockDocument1.getStyle()).thenReturn(null);
        when(mockDocument1.getLevel()).thenReturn(0);
        when(mockDocument1.getContentModel()).thenReturn("compound");
        when(mockDocument1.getSourceLocation()).thenReturn(null);
        when(mockDocument1.getSubstitutions()).thenReturn(Collections.emptyList());
        DescriptionList mockDescriptionList1 = mock(DescriptionList.class);
        when(mockDescriptionList1.getId()).thenReturn(null);
        when(mockDescriptionList1.getNodeName()).thenReturn("dlist");
        when(mockDescriptionList1.getParent()).thenReturn(mockDocument1);
        when(mockDescriptionList1.getContext()).thenReturn("dlist");
        when(mockDescriptionList1.getDocument()).thenReturn(mockDocument1);
        when(mockDescriptionList1.isInline()).thenReturn(false);
        when(mockDescriptionList1.isBlock()).thenReturn(true);
        when(mockDescriptionList1.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockDescriptionList1.getRoles()).thenReturn(Collections.emptyList());
        when(mockDescriptionList1.isReftext()).thenReturn(false);
        when(mockDescriptionList1.getReftext()).thenReturn(null);
        when(mockDescriptionList1.getCaption()).thenReturn(null);
        when(mockDescriptionList1.getTitle()).thenReturn(null);
        when(mockDescriptionList1.getStyle()).thenReturn(null);
        when(mockDescriptionList1.getLevel()).thenReturn(0);
        when(mockDescriptionList1.getContentModel()).thenReturn("compound");
        when(mockDescriptionList1.getSourceLocation()).thenReturn(null);
        when(mockDescriptionList1.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockDescriptionList1.getBlocks()).thenReturn(null);
        DescriptionListEntry mockDescriptionListEntry1 = mock(DescriptionListEntry.class);
        ListItem mockListItem1 = mock(ListItem.class);
        when(mockListItem1.getId()).thenReturn(null);
        when(mockListItem1.getNodeName()).thenReturn("list_item");
        when(mockListItem1.getParent()).thenReturn(mockDescriptionList1);
        when(mockListItem1.getContext()).thenReturn("list_item");
        when(mockListItem1.getDocument()).thenReturn(mockDocument1);
        when(mockListItem1.isInline()).thenReturn(false);
        when(mockListItem1.isBlock()).thenReturn(true);
        when(mockListItem1.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem1.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem1.isReftext()).thenReturn(false);
        when(mockListItem1.getReftext()).thenReturn(null);
        when(mockListItem1.getCaption()).thenReturn(null);
        when(mockListItem1.getTitle()).thenReturn(null);
        when(mockListItem1.getStyle()).thenReturn(null);
        when(mockListItem1.getLevel()).thenReturn(0);
        when(mockListItem1.getContentModel()).thenReturn("compound");
        when(mockListItem1.getSourceLocation()).thenReturn(null);
        when(mockListItem1.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        DescriptionList mockDescriptionList2 = mock(DescriptionList.class);
        when(mockDescriptionList2.getId()).thenReturn(null);
        when(mockDescriptionList2.getNodeName()).thenReturn("dlist");
        when(mockDescriptionList2.getParent()).thenReturn(mockListItem1);
        when(mockDescriptionList2.getContext()).thenReturn("dlist");
        when(mockDescriptionList2.getDocument()).thenReturn(mockDocument1);
        when(mockDescriptionList2.isInline()).thenReturn(false);
        when(mockDescriptionList2.isBlock()).thenReturn(true);
        when(mockDescriptionList2.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockDescriptionList2.getRoles()).thenReturn(Collections.emptyList());
        when(mockDescriptionList2.isReftext()).thenReturn(false);
        when(mockDescriptionList2.getReftext()).thenReturn(null);
        when(mockDescriptionList2.getCaption()).thenReturn(null);
        when(mockDescriptionList2.getTitle()).thenReturn(null);
        when(mockDescriptionList2.getStyle()).thenReturn(null);
        when(mockDescriptionList2.getLevel()).thenReturn(0);
        when(mockDescriptionList2.getContentModel()).thenReturn("compound");
        when(mockDescriptionList2.getSourceLocation()).thenReturn(null);
        when(mockDescriptionList2.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockDescriptionList2.getBlocks()).thenReturn(null);
        DescriptionListEntry mockDescriptionListEntry2 = mock(DescriptionListEntry.class);
        ListItem mockListItem2 = mock(ListItem.class);
        when(mockListItem2.getId()).thenReturn(null);
        when(mockListItem2.getNodeName()).thenReturn("list_item");
        when(mockListItem2.getParent()).thenReturn(mockDescriptionList2);
        when(mockListItem2.getContext()).thenReturn("list_item");
        when(mockListItem2.getDocument()).thenReturn(mockDocument1);
        when(mockListItem2.isInline()).thenReturn(false);
        when(mockListItem2.isBlock()).thenReturn(true);
        when(mockListItem2.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem2.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem2.isReftext()).thenReturn(false);
        when(mockListItem2.getReftext()).thenReturn(null);
        when(mockListItem2.getCaption()).thenReturn(null);
        when(mockListItem2.getTitle()).thenReturn(null);
        when(mockListItem2.getStyle()).thenReturn(null);
        when(mockListItem2.getLevel()).thenReturn(0);
        when(mockListItem2.getContentModel()).thenReturn("compound");
        when(mockListItem2.getSourceLocation()).thenReturn(null);
        when(mockListItem2.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        org.asciidoctor.ast.List mockList1 = mock(org.asciidoctor.ast.List.class);
        when(mockList1.getId()).thenReturn(null);
        when(mockList1.getNodeName()).thenReturn("olist");
        when(mockList1.getParent()).thenReturn(mockListItem2);
        when(mockList1.getContext()).thenReturn("olist");
        when(mockList1.getDocument()).thenReturn(mockDocument1);
        when(mockList1.isInline()).thenReturn(false);
        when(mockList1.isBlock()).thenReturn(true);
        Map<String, Object> map2 = new HashMap<>();
        map2.put("style", "arabic");
        when(mockList1.getAttributes()).thenReturn(map2);
        when(mockList1.getRoles()).thenReturn(Collections.emptyList());
        when(mockList1.isReftext()).thenReturn(false);
        when(mockList1.getReftext()).thenReturn(null);
        when(mockList1.getCaption()).thenReturn(null);
        when(mockList1.getTitle()).thenReturn(null);
        when(mockList1.getStyle()).thenReturn("arabic");
        when(mockList1.getLevel()).thenReturn(1);
        when(mockList1.getContentModel()).thenReturn("compound");
        when(mockList1.getSourceLocation()).thenReturn(null);
        when(mockList1.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockList1.getBlocks()).thenReturn(null);
        ListItem mockListItem3 = mock(ListItem.class);
        when(mockListItem3.getId()).thenReturn(null);
        when(mockListItem3.getNodeName()).thenReturn("list_item");
        when(mockListItem3.getParent()).thenReturn(mockList1);
        when(mockListItem3.getContext()).thenReturn("list_item");
        when(mockListItem3.getDocument()).thenReturn(mockDocument1);
        when(mockListItem3.isInline()).thenReturn(false);
        when(mockListItem3.isBlock()).thenReturn(true);
        when(mockListItem3.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem3.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem3.isReftext()).thenReturn(false);
        when(mockListItem3.getReftext()).thenReturn(null);
        when(mockListItem3.getCaption()).thenReturn(null);
        when(mockListItem3.getTitle()).thenReturn(null);
        when(mockListItem3.getStyle()).thenReturn(null);
        when(mockListItem3.getLevel()).thenReturn(1);
        when(mockListItem3.getContentModel()).thenReturn("compound");
        when(mockListItem3.getSourceLocation()).thenReturn(null);
        when(mockListItem3.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        org.asciidoctor.ast.List mockList2 = mock(org.asciidoctor.ast.List.class);
        when(mockList2.getId()).thenReturn(null);
        when(mockList2.getNodeName()).thenReturn("ulist");
        when(mockList2.getParent()).thenReturn(mockListItem3);
        when(mockList2.getContext()).thenReturn("ulist");
        when(mockList2.getDocument()).thenReturn(mockDocument1);
        when(mockList2.isInline()).thenReturn(false);
        when(mockList2.isBlock()).thenReturn(true);
        when(mockList2.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockList2.getRoles()).thenReturn(Collections.emptyList());
        when(mockList2.isReftext()).thenReturn(false);
        when(mockList2.getReftext()).thenReturn(null);
        when(mockList2.getCaption()).thenReturn(null);
        when(mockList2.getTitle()).thenReturn(null);
        when(mockList2.getStyle()).thenReturn(null);
        when(mockList2.getLevel()).thenReturn(1);
        when(mockList2.getContentModel()).thenReturn("compound");
        when(mockList2.getSourceLocation()).thenReturn(null);
        when(mockList2.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockList2.getBlocks()).thenReturn(null);
        ListItem mockListItem4 = mock(ListItem.class);
        when(mockListItem4.getId()).thenReturn(null);
        when(mockListItem4.getNodeName()).thenReturn("list_item");
        when(mockListItem4.getParent()).thenReturn(mockList2);
        when(mockListItem4.getContext()).thenReturn("list_item");
        when(mockListItem4.getDocument()).thenReturn(mockDocument1);
        when(mockListItem4.isInline()).thenReturn(false);
        when(mockListItem4.isBlock()).thenReturn(true);
        when(mockListItem4.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem4.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem4.isReftext()).thenReturn(false);
        when(mockListItem4.getReftext()).thenReturn(null);
        when(mockListItem4.getCaption()).thenReturn(null);
        when(mockListItem4.getTitle()).thenReturn(null);
        when(mockListItem4.getStyle()).thenReturn(null);
        when(mockListItem4.getLevel()).thenReturn(1);
        when(mockListItem4.getContentModel()).thenReturn("compound");
        when(mockListItem4.getSourceLocation()).thenReturn(null);
        when(mockListItem4.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem4.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem4.getMarker()).thenReturn("*");
        when(mockListItem4.getText()).thenReturn("Desktop");
        when(mockListItem4.getSource()).thenReturn("Desktop");
        when(mockListItem4.hasText()).thenReturn(true);
        when(mockList2.getItems()).thenReturn(Collections.singletonList(mockListItem4));
        when(mockList2.hasItems()).thenReturn(true);
        when(mockListItem3.getBlocks()).thenReturn(Collections.singletonList(mockList2));
        when(mockListItem3.getMarker()).thenReturn(".");
        when(mockListItem3.getText()).thenReturn("Fedora");
        when(mockListItem3.getSource()).thenReturn("Fedora");
        when(mockListItem3.hasText()).thenReturn(true);
        ListItem mockListItem5 = mock(ListItem.class);
        when(mockListItem5.getId()).thenReturn(null);
        when(mockListItem5.getNodeName()).thenReturn("list_item");
        when(mockListItem5.getParent()).thenReturn(mockList1);
        when(mockListItem5.getContext()).thenReturn("list_item");
        when(mockListItem5.getDocument()).thenReturn(mockDocument1);
        when(mockListItem5.isInline()).thenReturn(false);
        when(mockListItem5.isBlock()).thenReturn(true);
        when(mockListItem5.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem5.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem5.isReftext()).thenReturn(false);
        when(mockListItem5.getReftext()).thenReturn(null);
        when(mockListItem5.getCaption()).thenReturn(null);
        when(mockListItem5.getTitle()).thenReturn(null);
        when(mockListItem5.getStyle()).thenReturn(null);
        when(mockListItem5.getLevel()).thenReturn(1);
        when(mockListItem5.getContentModel()).thenReturn("compound");
        when(mockListItem5.getSourceLocation()).thenReturn(null);
        when(mockListItem5.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        org.asciidoctor.ast.List mockList3 = mock(org.asciidoctor.ast.List.class);
        when(mockList3.getId()).thenReturn(null);
        when(mockList3.getNodeName()).thenReturn("ulist");
        when(mockList3.getParent()).thenReturn(mockListItem5);
        when(mockList3.getContext()).thenReturn("ulist");
        when(mockList3.getDocument()).thenReturn(mockDocument1);
        when(mockList3.isInline()).thenReturn(false);
        when(mockList3.isBlock()).thenReturn(true);
        when(mockList3.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockList3.getRoles()).thenReturn(Collections.emptyList());
        when(mockList3.isReftext()).thenReturn(false);
        when(mockList3.getReftext()).thenReturn(null);
        when(mockList3.getCaption()).thenReturn(null);
        when(mockList3.getTitle()).thenReturn(null);
        when(mockList3.getStyle()).thenReturn(null);
        when(mockList3.getLevel()).thenReturn(1);
        when(mockList3.getContentModel()).thenReturn("compound");
        when(mockList3.getSourceLocation()).thenReturn(null);
        when(mockList3.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockList3.getBlocks()).thenReturn(null);
        ListItem mockListItem6 = mock(ListItem.class);
        when(mockListItem6.getId()).thenReturn(null);
        when(mockListItem6.getNodeName()).thenReturn("list_item");
        when(mockListItem6.getParent()).thenReturn(mockList3);
        when(mockListItem6.getContext()).thenReturn("list_item");
        when(mockListItem6.getDocument()).thenReturn(mockDocument1);
        when(mockListItem6.isInline()).thenReturn(false);
        when(mockListItem6.isBlock()).thenReturn(true);
        when(mockListItem6.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem6.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem6.isReftext()).thenReturn(false);
        when(mockListItem6.getReftext()).thenReturn(null);
        when(mockListItem6.getCaption()).thenReturn(null);
        when(mockListItem6.getTitle()).thenReturn(null);
        when(mockListItem6.getStyle()).thenReturn(null);
        when(mockListItem6.getLevel()).thenReturn(1);
        when(mockListItem6.getContentModel()).thenReturn("compound");
        when(mockListItem6.getSourceLocation()).thenReturn(null);
        when(mockListItem6.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem6.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem6.getMarker()).thenReturn("*");
        when(mockListItem6.getText()).thenReturn("Desktop");
        when(mockListItem6.getSource()).thenReturn("Desktop");
        when(mockListItem6.hasText()).thenReturn(true);
        ListItem mockListItem7 = mock(ListItem.class);
        when(mockListItem7.getId()).thenReturn(null);
        when(mockListItem7.getNodeName()).thenReturn("list_item");
        when(mockListItem7.getParent()).thenReturn(mockList3);
        when(mockListItem7.getContext()).thenReturn("list_item");
        when(mockListItem7.getDocument()).thenReturn(mockDocument1);
        when(mockListItem7.isInline()).thenReturn(false);
        when(mockListItem7.isBlock()).thenReturn(true);
        when(mockListItem7.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem7.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem7.isReftext()).thenReturn(false);
        when(mockListItem7.getReftext()).thenReturn(null);
        when(mockListItem7.getCaption()).thenReturn(null);
        when(mockListItem7.getTitle()).thenReturn(null);
        when(mockListItem7.getStyle()).thenReturn(null);
        when(mockListItem7.getLevel()).thenReturn(1);
        when(mockListItem7.getContentModel()).thenReturn("compound");
        when(mockListItem7.getSourceLocation()).thenReturn(null);
        when(mockListItem7.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem7.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem7.getMarker()).thenReturn("*");
        when(mockListItem7.getText()).thenReturn("Server");
        when(mockListItem7.getSource()).thenReturn("Server");
        when(mockListItem7.hasText()).thenReturn(true);
        when(mockList3.getItems()).thenReturn(Arrays.asList(mockListItem6, mockListItem7));
        when(mockList3.hasItems()).thenReturn(true);
        when(mockListItem5.getBlocks()).thenReturn(Collections.singletonList(mockList3));
        when(mockListItem5.getMarker()).thenReturn(".");
        when(mockListItem5.getText()).thenReturn("Ubuntu");
        when(mockListItem5.getSource()).thenReturn("Ubuntu");
        when(mockListItem5.hasText()).thenReturn(true);
        when(mockList1.getItems()).thenReturn(Arrays.asList(mockListItem3, mockListItem5));
        when(mockList1.hasItems()).thenReturn(true);
        when(mockListItem2.getBlocks()).thenReturn(Collections.singletonList(mockList1));
        when(mockListItem2.getMarker()).thenReturn(null);
        when(mockListItem2.getText()).thenThrow(new UnsupportedOperationException("NoMethodError"));
        when(mockListItem2.getSource()).thenReturn(null);
        when(mockListItem2.hasText()).thenReturn(false);
        when(mockDescriptionListEntry2.getDescription()).thenReturn(mockListItem2);
        ListItem mockListItem8 = mock(ListItem.class);
        when(mockListItem8.getId()).thenReturn(null);
        when(mockListItem8.getNodeName()).thenReturn("list_item");
        when(mockListItem8.getParent()).thenReturn(mockDescriptionList2);
        when(mockListItem8.getContext()).thenReturn("list_item");
        when(mockListItem8.getDocument()).thenReturn(mockDocument1);
        when(mockListItem8.isInline()).thenReturn(false);
        when(mockListItem8.isBlock()).thenReturn(true);
        when(mockListItem8.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem8.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem8.isReftext()).thenReturn(false);
        when(mockListItem8.getReftext()).thenReturn(null);
        when(mockListItem8.getCaption()).thenReturn(null);
        when(mockListItem8.getTitle()).thenReturn(null);
        when(mockListItem8.getStyle()).thenReturn(null);
        when(mockListItem8.getLevel()).thenReturn(0);
        when(mockListItem8.getContentModel()).thenReturn("compound");
        when(mockListItem8.getSourceLocation()).thenReturn(null);
        when(mockListItem8.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem8.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem8.getMarker()).thenReturn(null);
        when(mockListItem8.getText()).thenReturn("Linux");
        when(mockListItem8.getSource()).thenReturn("Linux");
        when(mockListItem8.hasText()).thenReturn(true);
        when(mockDescriptionListEntry2.getTerms()).thenReturn(Collections.singletonList(mockListItem8));
        DescriptionListEntry mockDescriptionListEntry3 = mock(DescriptionListEntry.class);
        ListItem mockListItem9 = mock(ListItem.class);
        when(mockListItem9.getId()).thenReturn(null);
        when(mockListItem9.getNodeName()).thenReturn("list_item");
        when(mockListItem9.getParent()).thenReturn(mockDescriptionList2);
        when(mockListItem9.getContext()).thenReturn("list_item");
        when(mockListItem9.getDocument()).thenReturn(mockDocument1);
        when(mockListItem9.isInline()).thenReturn(false);
        when(mockListItem9.isBlock()).thenReturn(true);
        when(mockListItem9.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem9.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem9.isReftext()).thenReturn(false);
        when(mockListItem9.getReftext()).thenReturn(null);
        when(mockListItem9.getCaption()).thenReturn(null);
        when(mockListItem9.getTitle()).thenReturn(null);
        when(mockListItem9.getStyle()).thenReturn(null);
        when(mockListItem9.getLevel()).thenReturn(0);
        when(mockListItem9.getContentModel()).thenReturn("compound");
        when(mockListItem9.getSourceLocation()).thenReturn(null);
        when(mockListItem9.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        org.asciidoctor.ast.List mockList4 = mock(org.asciidoctor.ast.List.class);
        when(mockList4.getId()).thenReturn(null);
        when(mockList4.getNodeName()).thenReturn("olist");
        when(mockList4.getParent()).thenReturn(mockListItem9);
        when(mockList4.getContext()).thenReturn("olist");
        when(mockList4.getDocument()).thenReturn(mockDocument1);
        when(mockList4.isInline()).thenReturn(false);
        when(mockList4.isBlock()).thenReturn(true);
        Map<String, Object> map3 = new HashMap<>();
        map3.put("style", "arabic");
        when(mockList4.getAttributes()).thenReturn(map3);
        when(mockList4.getRoles()).thenReturn(Collections.emptyList());
        when(mockList4.isReftext()).thenReturn(false);
        when(mockList4.getReftext()).thenReturn(null);
        when(mockList4.getCaption()).thenReturn(null);
        when(mockList4.getTitle()).thenReturn(null);
        when(mockList4.getStyle()).thenReturn("arabic");
        when(mockList4.getLevel()).thenReturn(1);
        when(mockList4.getContentModel()).thenReturn("compound");
        when(mockList4.getSourceLocation()).thenReturn(null);
        when(mockList4.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockList4.getBlocks()).thenReturn(null);
        ListItem mockListItem10 = mock(ListItem.class);
        when(mockListItem10.getId()).thenReturn(null);
        when(mockListItem10.getNodeName()).thenReturn("list_item");
        when(mockListItem10.getParent()).thenReturn(mockList4);
        when(mockListItem10.getContext()).thenReturn("list_item");
        when(mockListItem10.getDocument()).thenReturn(mockDocument1);
        when(mockListItem10.isInline()).thenReturn(false);
        when(mockListItem10.isBlock()).thenReturn(true);
        when(mockListItem10.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem10.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem10.isReftext()).thenReturn(false);
        when(mockListItem10.getReftext()).thenReturn(null);
        when(mockListItem10.getCaption()).thenReturn(null);
        when(mockListItem10.getTitle()).thenReturn(null);
        when(mockListItem10.getStyle()).thenReturn(null);
        when(mockListItem10.getLevel()).thenReturn(1);
        when(mockListItem10.getContentModel()).thenReturn("compound");
        when(mockListItem10.getSourceLocation()).thenReturn(null);
        when(mockListItem10.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem10.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem10.getMarker()).thenReturn(".");
        when(mockListItem10.getText()).thenReturn("FreeBSD");
        when(mockListItem10.getSource()).thenReturn("FreeBSD");
        when(mockListItem10.hasText()).thenReturn(true);
        ListItem mockListItem11 = mock(ListItem.class);
        when(mockListItem11.getId()).thenReturn(null);
        when(mockListItem11.getNodeName()).thenReturn("list_item");
        when(mockListItem11.getParent()).thenReturn(mockList4);
        when(mockListItem11.getContext()).thenReturn("list_item");
        when(mockListItem11.getDocument()).thenReturn(mockDocument1);
        when(mockListItem11.isInline()).thenReturn(false);
        when(mockListItem11.isBlock()).thenReturn(true);
        when(mockListItem11.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem11.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem11.isReftext()).thenReturn(false);
        when(mockListItem11.getReftext()).thenReturn(null);
        when(mockListItem11.getCaption()).thenReturn(null);
        when(mockListItem11.getTitle()).thenReturn(null);
        when(mockListItem11.getStyle()).thenReturn(null);
        when(mockListItem11.getLevel()).thenReturn(1);
        when(mockListItem11.getContentModel()).thenReturn("compound");
        when(mockListItem11.getSourceLocation()).thenReturn(null);
        when(mockListItem11.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem11.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem11.getMarker()).thenReturn(".");
        when(mockListItem11.getText()).thenReturn("NetBSD");
        when(mockListItem11.getSource()).thenReturn("NetBSD");
        when(mockListItem11.hasText()).thenReturn(true);
        when(mockList4.getItems()).thenReturn(Arrays.asList(mockListItem10, mockListItem11));
        when(mockList4.hasItems()).thenReturn(true);
        when(mockListItem9.getBlocks()).thenReturn(Collections.singletonList(mockList4));
        when(mockListItem9.getMarker()).thenReturn(null);
        when(mockListItem9.getText()).thenThrow(new UnsupportedOperationException("NoMethodError"));
        when(mockListItem9.getSource()).thenReturn(null);
        when(mockListItem9.hasText()).thenReturn(false);
        when(mockDescriptionListEntry3.getDescription()).thenReturn(mockListItem9);
        ListItem mockListItem12 = mock(ListItem.class);
        when(mockListItem12.getId()).thenReturn(null);
        when(mockListItem12.getNodeName()).thenReturn("list_item");
        when(mockListItem12.getParent()).thenReturn(mockDescriptionList2);
        when(mockListItem12.getContext()).thenReturn("list_item");
        when(mockListItem12.getDocument()).thenReturn(mockDocument1);
        when(mockListItem12.isInline()).thenReturn(false);
        when(mockListItem12.isBlock()).thenReturn(true);
        when(mockListItem12.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem12.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem12.isReftext()).thenReturn(false);
        when(mockListItem12.getReftext()).thenReturn(null);
        when(mockListItem12.getCaption()).thenReturn(null);
        when(mockListItem12.getTitle()).thenReturn(null);
        when(mockListItem12.getStyle()).thenReturn(null);
        when(mockListItem12.getLevel()).thenReturn(0);
        when(mockListItem12.getContentModel()).thenReturn("compound");
        when(mockListItem12.getSourceLocation()).thenReturn(null);
        when(mockListItem12.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem12.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem12.getMarker()).thenReturn(null);
        when(mockListItem12.getText()).thenReturn("BSD");
        when(mockListItem12.getSource()).thenReturn("BSD");
        when(mockListItem12.hasText()).thenReturn(true);
        when(mockDescriptionListEntry3.getTerms()).thenReturn(Collections.singletonList(mockListItem12));
        when(mockDescriptionList2.getItems()).thenReturn(Arrays.asList(mockDescriptionListEntry2, mockDescriptionListEntry3));
        when(mockListItem1.getBlocks()).thenReturn(Collections.singletonList(mockDescriptionList2));
        when(mockListItem1.getMarker()).thenReturn(null);
        when(mockListItem1.getText()).thenThrow(new UnsupportedOperationException("NoMethodError"));
        when(mockListItem1.getSource()).thenReturn(null);
        when(mockListItem1.hasText()).thenReturn(false);
        when(mockDescriptionListEntry1.getDescription()).thenReturn(mockListItem1);
        ListItem mockListItem13 = mock(ListItem.class);
        when(mockListItem13.getId()).thenReturn(null);
        when(mockListItem13.getNodeName()).thenReturn("list_item");
        when(mockListItem13.getParent()).thenReturn(mockDescriptionList1);
        when(mockListItem13.getContext()).thenReturn("list_item");
        when(mockListItem13.getDocument()).thenReturn(mockDocument1);
        when(mockListItem13.isInline()).thenReturn(false);
        when(mockListItem13.isBlock()).thenReturn(true);
        when(mockListItem13.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem13.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem13.isReftext()).thenReturn(false);
        when(mockListItem13.getReftext()).thenReturn(null);
        when(mockListItem13.getCaption()).thenReturn(null);
        when(mockListItem13.getTitle()).thenReturn(null);
        when(mockListItem13.getStyle()).thenReturn(null);
        when(mockListItem13.getLevel()).thenReturn(0);
        when(mockListItem13.getContentModel()).thenReturn("compound");
        when(mockListItem13.getSourceLocation()).thenReturn(null);
        when(mockListItem13.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem13.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem13.getMarker()).thenReturn(null);
        when(mockListItem13.getText()).thenReturn("Operating Systems");
        when(mockListItem13.getSource()).thenReturn("Operating Systems");
        when(mockListItem13.hasText()).thenReturn(true);
        when(mockDescriptionListEntry1.getTerms()).thenReturn(Collections.singletonList(mockListItem13));
        DescriptionListEntry mockDescriptionListEntry4 = mock(DescriptionListEntry.class);
        ListItem mockListItem14 = mock(ListItem.class);
        when(mockListItem14.getId()).thenReturn(null);
        when(mockListItem14.getNodeName()).thenReturn("list_item");
        when(mockListItem14.getParent()).thenReturn(mockDescriptionList1);
        when(mockListItem14.getContext()).thenReturn("list_item");
        when(mockListItem14.getDocument()).thenReturn(mockDocument1);
        when(mockListItem14.isInline()).thenReturn(false);
        when(mockListItem14.isBlock()).thenReturn(true);
        when(mockListItem14.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem14.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem14.isReftext()).thenReturn(false);
        when(mockListItem14.getReftext()).thenReturn(null);
        when(mockListItem14.getCaption()).thenReturn(null);
        when(mockListItem14.getTitle()).thenReturn(null);
        when(mockListItem14.getStyle()).thenReturn(null);
        when(mockListItem14.getLevel()).thenReturn(0);
        when(mockListItem14.getContentModel()).thenReturn("compound");
        when(mockListItem14.getSourceLocation()).thenReturn(null);
        when(mockListItem14.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        DescriptionList mockDescriptionList3 = mock(DescriptionList.class);
        when(mockDescriptionList3.getId()).thenReturn(null);
        when(mockDescriptionList3.getNodeName()).thenReturn("dlist");
        when(mockDescriptionList3.getParent()).thenReturn(mockListItem14);
        when(mockDescriptionList3.getContext()).thenReturn("dlist");
        when(mockDescriptionList3.getDocument()).thenReturn(mockDocument1);
        when(mockDescriptionList3.isInline()).thenReturn(false);
        when(mockDescriptionList3.isBlock()).thenReturn(true);
        when(mockDescriptionList3.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockDescriptionList3.getRoles()).thenReturn(Collections.emptyList());
        when(mockDescriptionList3.isReftext()).thenReturn(false);
        when(mockDescriptionList3.getReftext()).thenReturn(null);
        when(mockDescriptionList3.getCaption()).thenReturn(null);
        when(mockDescriptionList3.getTitle()).thenReturn(null);
        when(mockDescriptionList3.getStyle()).thenReturn(null);
        when(mockDescriptionList3.getLevel()).thenReturn(0);
        when(mockDescriptionList3.getContentModel()).thenReturn("compound");
        when(mockDescriptionList3.getSourceLocation()).thenReturn(null);
        when(mockDescriptionList3.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockDescriptionList3.getBlocks()).thenReturn(null);
        DescriptionListEntry mockDescriptionListEntry5 = mock(DescriptionListEntry.class);
        ListItem mockListItem15 = mock(ListItem.class);
        when(mockListItem15.getId()).thenReturn(null);
        when(mockListItem15.getNodeName()).thenReturn("list_item");
        when(mockListItem15.getParent()).thenReturn(mockDescriptionList3);
        when(mockListItem15.getContext()).thenReturn("list_item");
        when(mockListItem15.getDocument()).thenReturn(mockDocument1);
        when(mockListItem15.isInline()).thenReturn(false);
        when(mockListItem15.isBlock()).thenReturn(true);
        when(mockListItem15.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem15.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem15.isReftext()).thenReturn(false);
        when(mockListItem15.getReftext()).thenReturn(null);
        when(mockListItem15.getCaption()).thenReturn(null);
        when(mockListItem15.getTitle()).thenReturn(null);
        when(mockListItem15.getStyle()).thenReturn(null);
        when(mockListItem15.getLevel()).thenReturn(0);
        when(mockListItem15.getContentModel()).thenReturn("compound");
        when(mockListItem15.getSourceLocation()).thenReturn(null);
        when(mockListItem15.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        org.asciidoctor.ast.List mockList5 = mock(org.asciidoctor.ast.List.class);
        when(mockList5.getId()).thenReturn(null);
        when(mockList5.getNodeName()).thenReturn("olist");
        when(mockList5.getParent()).thenReturn(mockListItem15);
        when(mockList5.getContext()).thenReturn("olist");
        when(mockList5.getDocument()).thenReturn(mockDocument1);
        when(mockList5.isInline()).thenReturn(false);
        when(mockList5.isBlock()).thenReturn(true);
        Map<String, Object> map4 = new HashMap<>();
        map4.put("style", "arabic");
        when(mockList5.getAttributes()).thenReturn(map4);
        when(mockList5.getRoles()).thenReturn(Collections.emptyList());
        when(mockList5.isReftext()).thenReturn(false);
        when(mockList5.getReftext()).thenReturn(null);
        when(mockList5.getCaption()).thenReturn(null);
        when(mockList5.getTitle()).thenReturn(null);
        when(mockList5.getStyle()).thenReturn("arabic");
        when(mockList5.getLevel()).thenReturn(1);
        when(mockList5.getContentModel()).thenReturn("compound");
        when(mockList5.getSourceLocation()).thenReturn(null);
        when(mockList5.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockList5.getBlocks()).thenReturn(null);
        ListItem mockListItem16 = mock(ListItem.class);
        when(mockListItem16.getId()).thenReturn(null);
        when(mockListItem16.getNodeName()).thenReturn("list_item");
        when(mockListItem16.getParent()).thenReturn(mockList5);
        when(mockListItem16.getContext()).thenReturn("list_item");
        when(mockListItem16.getDocument()).thenReturn(mockDocument1);
        when(mockListItem16.isInline()).thenReturn(false);
        when(mockListItem16.isBlock()).thenReturn(true);
        when(mockListItem16.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem16.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem16.isReftext()).thenReturn(false);
        when(mockListItem16.getReftext()).thenReturn(null);
        when(mockListItem16.getCaption()).thenReturn(null);
        when(mockListItem16.getTitle()).thenReturn(null);
        when(mockListItem16.getStyle()).thenReturn(null);
        when(mockListItem16.getLevel()).thenReturn(1);
        when(mockListItem16.getContentModel()).thenReturn("compound");
        when(mockListItem16.getSourceLocation()).thenReturn(null);
        when(mockListItem16.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem16.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem16.getMarker()).thenReturn(".");
        when(mockListItem16.getText()).thenReturn("OpenShift");
        when(mockListItem16.getSource()).thenReturn("OpenShift");
        when(mockListItem16.hasText()).thenReturn(true);
        ListItem mockListItem17 = mock(ListItem.class);
        when(mockListItem17.getId()).thenReturn(null);
        when(mockListItem17.getNodeName()).thenReturn("list_item");
        when(mockListItem17.getParent()).thenReturn(mockList5);
        when(mockListItem17.getContext()).thenReturn("list_item");
        when(mockListItem17.getDocument()).thenReturn(mockDocument1);
        when(mockListItem17.isInline()).thenReturn(false);
        when(mockListItem17.isBlock()).thenReturn(true);
        when(mockListItem17.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem17.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem17.isReftext()).thenReturn(false);
        when(mockListItem17.getReftext()).thenReturn(null);
        when(mockListItem17.getCaption()).thenReturn(null);
        when(mockListItem17.getTitle()).thenReturn(null);
        when(mockListItem17.getStyle()).thenReturn(null);
        when(mockListItem17.getLevel()).thenReturn(1);
        when(mockListItem17.getContentModel()).thenReturn("compound");
        when(mockListItem17.getSourceLocation()).thenReturn(null);
        when(mockListItem17.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem17.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem17.getMarker()).thenReturn(".");
        when(mockListItem17.getText()).thenReturn("CloudBees");
        when(mockListItem17.getSource()).thenReturn("CloudBees");
        when(mockListItem17.hasText()).thenReturn(true);
        when(mockList5.getItems()).thenReturn(Arrays.asList(mockListItem16, mockListItem17));
        when(mockList5.hasItems()).thenReturn(true);
        when(mockListItem15.getBlocks()).thenReturn(Collections.singletonList(mockList5));
        when(mockListItem15.getMarker()).thenReturn(null);
        when(mockListItem15.getText()).thenThrow(new UnsupportedOperationException("NoMethodError"));
        when(mockListItem15.getSource()).thenReturn(null);
        when(mockListItem15.hasText()).thenReturn(false);
        when(mockDescriptionListEntry5.getDescription()).thenReturn(mockListItem15);
        ListItem mockListItem18 = mock(ListItem.class);
        when(mockListItem18.getId()).thenReturn(null);
        when(mockListItem18.getNodeName()).thenReturn("list_item");
        when(mockListItem18.getParent()).thenReturn(mockDescriptionList3);
        when(mockListItem18.getContext()).thenReturn("list_item");
        when(mockListItem18.getDocument()).thenReturn(mockDocument1);
        when(mockListItem18.isInline()).thenReturn(false);
        when(mockListItem18.isBlock()).thenReturn(true);
        when(mockListItem18.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem18.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem18.isReftext()).thenReturn(false);
        when(mockListItem18.getReftext()).thenReturn(null);
        when(mockListItem18.getCaption()).thenReturn(null);
        when(mockListItem18.getTitle()).thenReturn(null);
        when(mockListItem18.getStyle()).thenReturn(null);
        when(mockListItem18.getLevel()).thenReturn(0);
        when(mockListItem18.getContentModel()).thenReturn("compound");
        when(mockListItem18.getSourceLocation()).thenReturn(null);
        when(mockListItem18.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem18.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem18.getMarker()).thenReturn(null);
        when(mockListItem18.getText()).thenReturn("PaaS");
        when(mockListItem18.getSource()).thenReturn("PaaS");
        when(mockListItem18.hasText()).thenReturn(true);
        when(mockDescriptionListEntry5.getTerms()).thenReturn(Collections.singletonList(mockListItem18));
        DescriptionListEntry mockDescriptionListEntry6 = mock(DescriptionListEntry.class);
        ListItem mockListItem19 = mock(ListItem.class);
        when(mockListItem19.getId()).thenReturn(null);
        when(mockListItem19.getNodeName()).thenReturn("list_item");
        when(mockListItem19.getParent()).thenReturn(mockDescriptionList3);
        when(mockListItem19.getContext()).thenReturn("list_item");
        when(mockListItem19.getDocument()).thenReturn(mockDocument1);
        when(mockListItem19.isInline()).thenReturn(false);
        when(mockListItem19.isBlock()).thenReturn(true);
        when(mockListItem19.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem19.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem19.isReftext()).thenReturn(false);
        when(mockListItem19.getReftext()).thenReturn(null);
        when(mockListItem19.getCaption()).thenReturn(null);
        when(mockListItem19.getTitle()).thenReturn(null);
        when(mockListItem19.getStyle()).thenReturn(null);
        when(mockListItem19.getLevel()).thenReturn(0);
        when(mockListItem19.getContentModel()).thenReturn("compound");
        when(mockListItem19.getSourceLocation()).thenReturn(null);
        when(mockListItem19.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        org.asciidoctor.ast.List mockList6 = mock(org.asciidoctor.ast.List.class);
        when(mockList6.getId()).thenReturn(null);
        when(mockList6.getNodeName()).thenReturn("olist");
        when(mockList6.getParent()).thenReturn(mockListItem19);
        when(mockList6.getContext()).thenReturn("olist");
        when(mockList6.getDocument()).thenReturn(mockDocument1);
        when(mockList6.isInline()).thenReturn(false);
        when(mockList6.isBlock()).thenReturn(true);
        Map<String, Object> map5 = new HashMap<>();
        map5.put("style", "arabic");
        when(mockList6.getAttributes()).thenReturn(map5);
        when(mockList6.getRoles()).thenReturn(Collections.emptyList());
        when(mockList6.isReftext()).thenReturn(false);
        when(mockList6.getReftext()).thenReturn(null);
        when(mockList6.getCaption()).thenReturn(null);
        when(mockList6.getTitle()).thenReturn(null);
        when(mockList6.getStyle()).thenReturn("arabic");
        when(mockList6.getLevel()).thenReturn(1);
        when(mockList6.getContentModel()).thenReturn("compound");
        when(mockList6.getSourceLocation()).thenReturn(null);
        when(mockList6.getSubstitutions()).thenReturn(Collections.emptyList());
        when(mockList6.getBlocks()).thenReturn(null);
        ListItem mockListItem20 = mock(ListItem.class);
        when(mockListItem20.getId()).thenReturn(null);
        when(mockListItem20.getNodeName()).thenReturn("list_item");
        when(mockListItem20.getParent()).thenReturn(mockList6);
        when(mockListItem20.getContext()).thenReturn("list_item");
        when(mockListItem20.getDocument()).thenReturn(mockDocument1);
        when(mockListItem20.isInline()).thenReturn(false);
        when(mockListItem20.isBlock()).thenReturn(true);
        when(mockListItem20.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem20.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem20.isReftext()).thenReturn(false);
        when(mockListItem20.getReftext()).thenReturn(null);
        when(mockListItem20.getCaption()).thenReturn(null);
        when(mockListItem20.getTitle()).thenReturn(null);
        when(mockListItem20.getStyle()).thenReturn(null);
        when(mockListItem20.getLevel()).thenReturn(1);
        when(mockListItem20.getContentModel()).thenReturn("compound");
        when(mockListItem20.getSourceLocation()).thenReturn(null);
        when(mockListItem20.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem20.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem20.getMarker()).thenReturn(".");
        when(mockListItem20.getText()).thenReturn("Amazon EC2");
        when(mockListItem20.getSource()).thenReturn("Amazon EC2");
        when(mockListItem20.hasText()).thenReturn(true);
        ListItem mockListItem21 = mock(ListItem.class);
        when(mockListItem21.getId()).thenReturn(null);
        when(mockListItem21.getNodeName()).thenReturn("list_item");
        when(mockListItem21.getParent()).thenReturn(mockList6);
        when(mockListItem21.getContext()).thenReturn("list_item");
        when(mockListItem21.getDocument()).thenReturn(mockDocument1);
        when(mockListItem21.isInline()).thenReturn(false);
        when(mockListItem21.isBlock()).thenReturn(true);
        when(mockListItem21.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem21.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem21.isReftext()).thenReturn(false);
        when(mockListItem21.getReftext()).thenReturn(null);
        when(mockListItem21.getCaption()).thenReturn(null);
        when(mockListItem21.getTitle()).thenReturn(null);
        when(mockListItem21.getStyle()).thenReturn(null);
        when(mockListItem21.getLevel()).thenReturn(1);
        when(mockListItem21.getContentModel()).thenReturn("compound");
        when(mockListItem21.getSourceLocation()).thenReturn(null);
        when(mockListItem21.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem21.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem21.getMarker()).thenReturn(".");
        when(mockListItem21.getText()).thenReturn("Rackspace");
        when(mockListItem21.getSource()).thenReturn("Rackspace");
        when(mockListItem21.hasText()).thenReturn(true);
        when(mockList6.getItems()).thenReturn(Arrays.asList(mockListItem20, mockListItem21));
        when(mockList6.hasItems()).thenReturn(true);
        when(mockListItem19.getBlocks()).thenReturn(Collections.singletonList(mockList6));
        when(mockListItem19.getMarker()).thenReturn(null);
        when(mockListItem19.getText()).thenThrow(new UnsupportedOperationException("NoMethodError"));
        when(mockListItem19.getSource()).thenReturn(null);
        when(mockListItem19.hasText()).thenReturn(false);
        when(mockDescriptionListEntry6.getDescription()).thenReturn(mockListItem19);
        ListItem mockListItem22 = mock(ListItem.class);
        when(mockListItem22.getId()).thenReturn(null);
        when(mockListItem22.getNodeName()).thenReturn("list_item");
        when(mockListItem22.getParent()).thenReturn(mockDescriptionList3);
        when(mockListItem22.getContext()).thenReturn("list_item");
        when(mockListItem22.getDocument()).thenReturn(mockDocument1);
        when(mockListItem22.isInline()).thenReturn(false);
        when(mockListItem22.isBlock()).thenReturn(true);
        when(mockListItem22.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem22.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem22.isReftext()).thenReturn(false);
        when(mockListItem22.getReftext()).thenReturn(null);
        when(mockListItem22.getCaption()).thenReturn(null);
        when(mockListItem22.getTitle()).thenReturn(null);
        when(mockListItem22.getStyle()).thenReturn(null);
        when(mockListItem22.getLevel()).thenReturn(0);
        when(mockListItem22.getContentModel()).thenReturn("compound");
        when(mockListItem22.getSourceLocation()).thenReturn(null);
        when(mockListItem22.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem22.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem22.getMarker()).thenReturn(null);
        when(mockListItem22.getText()).thenReturn("IaaS");
        when(mockListItem22.getSource()).thenReturn("IaaS");
        when(mockListItem22.hasText()).thenReturn(true);
        when(mockDescriptionListEntry6.getTerms()).thenReturn(Collections.singletonList(mockListItem22));
        when(mockDescriptionList3.getItems()).thenReturn(Arrays.asList(mockDescriptionListEntry5, mockDescriptionListEntry6));
        when(mockListItem14.getBlocks()).thenReturn(Collections.singletonList(mockDescriptionList3));
        when(mockListItem14.getMarker()).thenReturn(null);
        when(mockListItem14.getText()).thenThrow(new UnsupportedOperationException("NoMethodError"));
        when(mockListItem14.getSource()).thenReturn(null);
        when(mockListItem14.hasText()).thenReturn(false);
        when(mockDescriptionListEntry4.getDescription()).thenReturn(mockListItem14);
        ListItem mockListItem23 = mock(ListItem.class);
        when(mockListItem23.getId()).thenReturn(null);
        when(mockListItem23.getNodeName()).thenReturn("list_item");
        when(mockListItem23.getParent()).thenReturn(mockDescriptionList1);
        when(mockListItem23.getContext()).thenReturn("list_item");
        when(mockListItem23.getDocument()).thenReturn(mockDocument1);
        when(mockListItem23.isInline()).thenReturn(false);
        when(mockListItem23.isBlock()).thenReturn(true);
        when(mockListItem23.getAttributes()).thenReturn(Collections.emptyMap());
        when(mockListItem23.getRoles()).thenReturn(Collections.emptyList());
        when(mockListItem23.isReftext()).thenReturn(false);
        when(mockListItem23.getReftext()).thenReturn(null);
        when(mockListItem23.getCaption()).thenReturn(null);
        when(mockListItem23.getTitle()).thenReturn(null);
        when(mockListItem23.getStyle()).thenReturn(null);
        when(mockListItem23.getLevel()).thenReturn(0);
        when(mockListItem23.getContentModel()).thenReturn("compound");
        when(mockListItem23.getSourceLocation()).thenReturn(null);
        when(mockListItem23.getSubstitutions()).thenReturn(Arrays.asList("specialcharacters", "quotes", "attributes", "replacements", "macros", "post_replacements"));
        when(mockListItem23.getBlocks()).thenReturn(Collections.emptyList());
        when(mockListItem23.getMarker()).thenReturn(null);
        when(mockListItem23.getText()).thenReturn("Cloud Providers");
        when(mockListItem23.getSource()).thenReturn("Cloud Providers");
        when(mockListItem23.hasText()).thenReturn(true);
        when(mockDescriptionListEntry4.getTerms()).thenReturn(Collections.singletonList(mockListItem23));
        when(mockDescriptionList1.getItems()).thenReturn(Arrays.asList(mockDescriptionListEntry1, mockDescriptionListEntry4));
        when(mockDocument1.getBlocks()).thenReturn(Collections.singletonList(mockDescriptionList1));
        when(mockDocument1.getStructuredDoctitle()).thenReturn(null);
        when(mockDocument1.getDoctitle()).thenReturn(null);
        Map<Object, Object> map6 = new HashMap<>();
        map6.put("attributes", "{}");
        map6.put("header_footer", false);
        when(mockDocument1.getOptions()).thenReturn(map6);
        return mockDocument1;
    }
    // end::mock-code[]
}