MCPcopy Create free account
hub / github.com/commonmark/cmark / sub_document

Function sub_document

api_test/main.c:932–999  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

930}
931
932static void sub_document(test_batch_runner *runner) {
933 cmark_node *doc = cmark_node_new(CMARK_NODE_DOCUMENT);
934 cmark_node *list = cmark_node_new(CMARK_NODE_LIST);
935 OK(runner, cmark_node_append_child(doc, list), "list");
936
937 {
938 cmark_node *item = cmark_node_new(CMARK_NODE_ITEM);
939 OK(runner, cmark_node_append_child(list, item), "append_0");
940 static const char markdown[] =
941 "Hello &ldquo; <http://www.google.com>\n";
942 cmark_parser *parser = cmark_parser_new_with_mem_into_root(
943 CMARK_OPT_DEFAULT,
944 cmark_get_default_mem_allocator(),
945 item);
946 cmark_parser_feed(parser, markdown, sizeof(markdown) - 1);
947 OK(runner, cmark_parser_finish(parser) != NULL, "parser_finish_0");
948 cmark_parser_free(parser);
949 }
950
951 {
952 cmark_node *item = cmark_node_new(CMARK_NODE_ITEM);
953 OK(runner, cmark_node_append_child(list, item), "append_0");
954 static const char markdown[] =
955 "Bye &ldquo; <http://www.geocities.com>\n";
956 cmark_parser *parser = cmark_parser_new_with_mem_into_root(
957 CMARK_OPT_DEFAULT,
958 cmark_get_default_mem_allocator(),
959 item);
960 cmark_parser_feed(parser, markdown, sizeof(markdown) - 1);
961 OK(runner, cmark_parser_finish(parser) != NULL, "parser_finish_0");
962 cmark_parser_free(parser);
963 }
964
965 char *xml = cmark_render_xml(doc, CMARK_OPT_DEFAULT);
966 STR_EQ(runner, xml, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
967 "<!DOCTYPE document SYSTEM \"CommonMark.dtd\">\n"
968 "<document xmlns=\"http://commonmark.org/xml/1.0\">\n"
969 " <list type=\"bullet\" tight=\"false\">\n"
970 " <item>\n"
971 " <paragraph>\n"
972 " <text xml:space=\"preserve\">Hello “ </text>\n"
973 " <link destination=\"http://www.google.com\">\n"
974 " <text xml:space=\"preserve\">http://www.google.com</text>\n"
975 " </link>\n"
976 " </paragraph>\n"
977 " </item>\n"
978 " <item>\n"
979 " <paragraph>\n"
980 " <text xml:space=\"preserve\">Bye “ </text>\n"
981 " <link destination=\"http://www.geocities.com\">\n"
982 " <text xml:space=\"preserve\">http://www.geocities.com</text>\n"
983 " </link>\n"
984 " </paragraph>\n"
985 " </item>\n"
986 " </list>\n"
987 "</document>\n",
988 "nested document XML is as expected");
989 free(xml);

Callers 1

mainFunction · 0.85

Calls 12

cmark_node_newFunction · 0.85
OKFunction · 0.85
cmark_node_append_childFunction · 0.85
cmark_parser_feedFunction · 0.85
cmark_parser_finishFunction · 0.85
cmark_parser_freeFunction · 0.85
cmark_render_xmlFunction · 0.85
STR_EQFunction · 0.85
cmark_render_commonmarkFunction · 0.85
cmark_node_freeFunction · 0.85

Tested by

no test coverage detected