| 291 | } |
| 292 | |
| 293 | static void iterator(test_batch_runner *runner) { |
| 294 | cmark_node *doc = cmark_parse_document("> a *b*\n\nc", 10, CMARK_OPT_DEFAULT); |
| 295 | int parnodes = 0; |
| 296 | cmark_event_type ev_type; |
| 297 | cmark_iter *iter = cmark_iter_new(doc); |
| 298 | cmark_node *cur; |
| 299 | |
| 300 | while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) { |
| 301 | cur = cmark_iter_get_node(iter); |
| 302 | if (cur->type == CMARK_NODE_PARAGRAPH && ev_type == CMARK_EVENT_ENTER) { |
| 303 | parnodes += 1; |
| 304 | } |
| 305 | } |
| 306 | INT_EQ(runner, parnodes, 2, "iterate correctly counts paragraphs"); |
| 307 | |
| 308 | cmark_iter_free(iter); |
| 309 | cmark_node_free(doc); |
| 310 | } |
| 311 | |
| 312 | static void iterator_delete(test_batch_runner *runner) { |
| 313 | static const char md[] = "a *b* c\n" |
no test coverage detected