Lines Matching full:parser
7 |_| XML parser
65 /* Test that a failure to allocate the parser structure fails gracefully */
79 fail("Parser unexpectedly ignored failing allocator"); in START_TEST()
81 fail("Parser not created with max allocation count"); in START_TEST()
85 /* Test memory allocation failures for a parser with an encoding */
99 fail("Parser ignored failing allocator"); in START_TEST()
101 fail("Parser not created with max allocation count"); in START_TEST()
105 /* Test that freeing a NULL parser doesn't cause an explosion.
267 /* Test parser created for UTF-16LE is successful */
279 fail("Parser not created"); in START_TEST()
292 XML_Parser parser; in START_TEST() local
297 parser = XML_ParserCreate(NULL); in START_TEST()
298 XML_SetElementHandler(parser, start_element_issue_240, end_element_issue_240); in START_TEST()
301 mydata->parser = parser; in START_TEST()
303 XML_SetUserData(parser, mydata); in START_TEST()
305 result = _XML_Parse_SINGLE_BYTES(parser, doc1, (int)strlen(doc1), 1); in START_TEST()
306 XML_ParserFree(parser); in START_TEST()
309 fail("Stopping the parser did not work as expected"); in START_TEST()
314 XML_Parser parser; in START_TEST() local
319 parser = XML_ParserCreate(NULL); in START_TEST()
320 XML_SetElementHandler(parser, start_element_issue_240, end_element_issue_240); in START_TEST()
323 mydata->parser = parser; in START_TEST()
325 XML_SetUserData(parser, mydata); in START_TEST()
327 result = _XML_Parse_SINGLE_BYTES(parser, doc2, (int)strlen(doc2), 1); in START_TEST()
328 XML_ParserFree(parser); in START_TEST()
331 fail("Stopping the parser did not work as expected"); in START_TEST()
386 XML_Parser parser; in START_TEST() local
392 parser = XML_ParserCreate(NULL); in START_TEST()
394 = XML_SetParamEntityParsing(parser, XML_PARAM_ENTITY_PARSING_ALWAYS); in START_TEST()
399 XML_SetUserData(parser, parser); in START_TEST()
400 XML_SetElementDeclHandler(parser, suspend_after_element_declaration); in START_TEST()
407 parseResult = XML_Parse(parser, input, (int)strlen(input), 0); in START_TEST()
410 parseResult = XML_ResumeParser(parser); in START_TEST()
417 parseResult = XML_Parse(parser, "", 0, 1); in START_TEST()
421 parseResult = XML_ResumeParser(parser); in START_TEST()
425 = _XML_Parse_SINGLE_BYTES(parser, input, (int)strlen(input), 0); in START_TEST()
428 parseResult = _XML_Parse_SINGLE_BYTES(parser, "", 0, 1); in START_TEST()
436 if (XML_GetErrorCode(parser) != XML_ERROR_INVALID_TOKEN) in START_TEST()
439 lineNumber = XML_GetCurrentLineNumber(parser); in START_TEST()
443 columnNumber = XML_GetCurrentColumnNumber(parser); in START_TEST()
447 XML_ParserFree(parser); in START_TEST()
456 XML_Parser parser = XML_ParserCreateNS(NULL, XCS('\n')); in START_TEST() local
458 if (_XML_Parse_SINGLE_BYTES(parser, text, (int)strlen(text), XML_TRUE) in START_TEST()
461 if (XML_GetErrorCode(parser) != XML_ERROR_TAG_MISMATCH) in START_TEST()
464 XML_ParserReset(parser, NULL); in START_TEST()
466 if (_XML_Parse_SINGLE_BYTES(parser, text, (int)strlen(text), XML_TRUE) in START_TEST()
469 if (XML_GetErrorCode(parser) != XML_ERROR_TAG_MISMATCH) in START_TEST()
472 XML_ParserFree(parser); in START_TEST()
482 XML_Parser parser = XML_ParserCreate(NULL); in START_TEST() local
483 XML_Parser ext_parser = XML_ExternalEntityParserCreate(parser, NULL, NULL); in START_TEST()
490 XML_ParserFree(parser); in START_TEST()
505 XML_Parser parser = XML_ParserCreate(NULL); in START_TEST() local
506 XML_SetUserData(parser, &storage); in START_TEST()
507 XML_SetStartElementHandler(parser, accumulate_start_element); in START_TEST()
508 XML_SetExternalEntityRefHandler(parser, in START_TEST()
510 XML_SetEntityDeclHandler(parser, accumulate_entity_decl); in START_TEST()
511 XML_SetCharacterDataHandler(parser, accumulate_characters); in START_TEST()
513 if (_XML_Parse_SINGLE_BYTES(parser, doc, (int)strlen(doc), XML_TRUE) in START_TEST()
515 xml_failure(parser); in START_TEST()
518 XML_ParserFree(parser); in START_TEST()
543 XML_Parser parser = (XML_Parser)userData; in resumable_stopping_character_handler() local
544 XML_StopParser(parser, XML_TRUE); in resumable_stopping_character_handler()
551 XML_Parser parser = XML_ParserCreate(NULL); in START_TEST() local
552 assert_true(parser != NULL); in START_TEST()
553 XML_SetUserData(parser, parser); in START_TEST()
554 XML_SetCharacterDataHandler(parser, resumable_stopping_character_handler); in START_TEST()
555 _XML_Parse_SINGLE_BYTES(parser, data, (int)strlen(data), XML_FALSE); in START_TEST()
556 XML_ParserFree(parser); in START_TEST()
561 XML_Parser parser = XML_ParserCreate(NULL); in START_TEST() local
562 XML_GetBuffer(parser, 1); in START_TEST()
563 XML_StopParser(parser, /*resumable=*/XML_TRUE); in START_TEST()
564 XML_ResumeParser(parser); // could crash here, previously in START_TEST()
565 XML_ParserFree(parser); in START_TEST()
573 XML_Parser parser = XML_ParserCreate(NULL); in START_TEST() local
574 assert_true(XML_GetErrorCode(parser) == XML_ERROR_NONE); in START_TEST()
575 assert_true(XML_StopParser(parser, resumable) == XML_STATUS_ERROR); in START_TEST()
576 assert_true(XML_GetErrorCode(parser) == XML_ERROR_NOT_STARTED); in START_TEST()
577 XML_ParserFree(parser); in START_TEST()
607 XML_Parser parser = XML_ParserCreate(NULL); in START_TEST() local
608 assert_true(parser != NULL); in START_TEST()
609 XML_SetUserData(parser, &test_data); in START_TEST()
610 XML_SetExternalEntityRefHandler(parser, external_entity_oneshot_loader); in START_TEST()
611 XML_SetCharacterDataHandler(parser, accumulate_characters_ext_handler); in START_TEST()
612 if (_XML_Parse_SINGLE_BYTES(parser, text, (int)strlen(text), XML_TRUE) in START_TEST()
614 xml_failure(parser); in START_TEST()
617 XML_ParserFree(parser); in START_TEST()
621 // Inspired by function XML_OriginalString of Perl's XML::Parser
623 dup_original_string(XML_Parser parser) { in dup_original_string() argument
624 const int byte_count = XML_GetCurrentByteCount(parser); in dup_original_string()
631 const char *const context = XML_GetInputContext(parser, &offset, &size); in dup_original_string()
648 XML_Parser parser = (XML_Parser)userData; in on_characters_issue_980() local
650 char *const original_string = dup_original_string(parser); in on_characters_issue_980()
663 // from Perl's XML::Parser in START_TEST()
669 XML_Parser parser = XML_ParserCreate(NULL); in START_TEST() local
670 XML_SetUserData(parser, parser); in START_TEST()
671 XML_SetCharacterDataHandler(parser, on_characters_issue_980); in START_TEST()
673 assert_true(_XML_Parse_SINGLE_BYTES(parser, doc, (int)strlen(doc), in START_TEST()
677 XML_ParserFree(parser); in START_TEST()