diff --git a/tests/test_parse_doctype.cpp b/tests/test_parse_doctype.cpp index 11950ce..2df51a0 100644 --- a/tests/test_parse_doctype.cpp +++ b/tests/test_parse_doctype.cpp @@ -241,3 +241,35 @@ TEST(parse_doctype_xmlconf_ibm_3) TEST_DOCTYPE_WF("'. These must be balanced ]]> nesting ]]> nesting again ]]> end ]]> ]>"); TEST_DOCTYPE_WF(" \"> %pe1; ]> ]>"); } + +TEST(parse_doctype_xmlconf_oasis_1) +{ + TEST_DOCTYPE_WF(" ]>"); + TEST_DOCTYPE_WF("\"> ]]> %rootel; ]]> ]>"); + TEST_DOCTYPE_WF(" ]]>]]> ]>"); + TEST_DOCTYPE_WF(" ]]>]]> ]>"); + TEST_DOCTYPE_NWF(" ]>"); + TEST_DOCTYPE_WF(" ]]> ]>"); + TEST_DOCTYPE_NWF(" ]>"); + TEST_DOCTYPE_WF(" '. These must be balanced, but it is no section keyword is required: ] ]> ]] > ]]> ]]> ]>"); + TEST_DOCTYPE_WF(" ?>/\''\"> ]>"); + TEST_DOCTYPE_WF(" ]>"); + TEST_DOCTYPE_WF(" ]>"); + TEST_DOCTYPE_WF(" "); // not actually a doctype :) + TEST_DOCTYPE_WF(" &a%b&#c?>"); // not actually a doctype :) + TEST_DOCTYPE_WF("]>"); +} + +TEST(parse_doctype_xmlconf_xmltest_1) +{ + TEST_DOCTYPE_NWF(" ]> ]>"); + TEST_DOCTYPE_NWF(" "); + TEST_DOCTYPE_NWF(" "); + TEST_DOCTYPE_WF(" %e; -->"); + TEST_DOCTYPE_WF(" ]>"); + TEST_DOCTYPE_WF(" ]>"); + TEST_DOCTYPE_WF("\"> ]>"); + TEST_DOCTYPE_WF(" \"> ]>"); +}