# Test Case Document # ## broken_link_or_image ## This [line][] contains exactly 1 [broken](b r o k e n) \[link\]\(link\), and this line has 0 `[broken](l i n k s)`. [line]: https://localhost/line The following lines of text contain 0 because they are code blocks: ~~~ There are no [broken](definitely not broken) links here... ~~~ ``` And there are no [broken](totally not broken) links here. ``` There are also no [broken](nope still not broken) links here! ## empty_list_entry ## The following list includes an empty item: 1. One 2. 3. Three ## heading_discontinuity ## When adding a heading, the level of the new heading should be less than or equal to the previous heading, or the new level should be exactly 1 greater: > ### Good Heading ### > > ### Another Good Heading ### > > ##### Bad Heading; (5 - 3) ≠ 1 ##### The level of the first heading in a container sets the floor for all of the following heading: > #### First Heading In Block Quote #### > > #### Second Heading #### > > ### Bad Heading; Level 3 < Level 4 ### ## label_exists_for_destination ## This [link](//#label_exists_for_destination) could be replaced with a label i.e. [link][label_exists_for_destination]. [label_exists_for_destination]: //#label_exists_for_destination ## link_destination_duplicate ## The destinations for [localhost][] and [::1][] are the same. [localhost]: http://localhost/ [::1]: http://localhost/ ## link_label_defined_before_first_reference ## [localhost-tls]: https://127.0.0.1/ The label for [localhost-tls][] is defined above this line where it is first referenced. ## link_label_duplicate ## Two link reference definitions should never use the same [label][link-label-duplicate]. [link-label-duplicate]: https://localhost/link_label_duplicate [link-label-duplicate]: https://localhost/test-case-document ## link_label_unused ## This link label is never referenced: [never-referenced]: // When the unreferenced label is re-used, it should trigger link_label_duplicate instead of link_label_unused: [never-referenced]: //# ## link_reference_definitions_out_of_order ## - First: [Twinkle][] twinkle, little [star][]; how I [wonder][] what you are. - If there is a series of link reference definitions after a list, the "sourcepos" attribute for the list will span the reference lines. Use of a list here ensures that the code path responsible for keeping "xml_line_elements" pruned is exercised. [star]: //star [twinkle]: //twinkle [wonder]: //wonder ## list_items_out_of_order ## These numbers are not sequential: 1. One 2. Two 4. Four?! ## list_style_changed ## The list marker changes in the middle of this unordered list: - Apple - Bear - Cat * Qbt * Rntyr * Sna The number delimiter changes in the middle of this ordered list: 1. One 2. Two 3. Three 4) Four 5) Five 6) Six ## missing_blank_line_before_loose_list ## There is no blank line between this text and following loose list: - Uno - Dos - Tres ## nested_heading ## Headings generally only make sense as descendents of certain block elements. In the following example, an empty list element results in a heading being created in the middle of a list: - Rosales - Rosaceae - Malus - - Pumila ## tight_list_adjacent_to_loose_list ## Here is a tight list adjacent to a loose list: - Alpha - Bravo - Charlie * Delta * Echo * Foxtrot ## undefined_link_label ## This line has 1 [broken][] link. This line also has 1 [broken][broken] link. ## wrong_link_reference_definition_indent ## There are [three][] [link][] [reference][] definitions here using the wrong indent level. [three]: https://localhost/3 [link]: https://localhost/link [reference]: https://localhost/reference ## wrong_loose_list_spacing ## This loose list has three entries with the wrong number of blank lines between it and the previous item: - OK. - OK. - No. - No! - 助けて!