mirror of
https://github.com/zeux/pugixml.git
synced 2025-01-14 01:47:55 +08:00
parse_wnorm_attribute is no longer deprecated (it's part of W3C recommendations, after all)
git-svn-id: http://pugixml.googlecode.com/svn/trunk@557 99668b35-9821-0410-8761-19e4c4f06640
This commit is contained in:
parent
841aefb120
commit
8f27f244d0
@ -1771,7 +1771,7 @@ namespace
|
||||
|
||||
strconv_attribute_t get_strconv_attribute(unsigned int optmask)
|
||||
{
|
||||
STATIC_ASSERT(parse_escapes == 0x10 && parse_eol == 0x20 && parse_wconv_attribute == 0x40);
|
||||
STATIC_ASSERT(parse_escapes == 0x10 && parse_eol == 0x20 && parse_wconv_attribute == 0x40 && parse_wnorm_attribute == 0x80);
|
||||
|
||||
switch ((optmask >> 4) & 15) // get bitmask for flags (wconv wnorm eol escapes)
|
||||
{
|
||||
|
@ -227,12 +227,7 @@ namespace pugi
|
||||
* 3. Leading/trailing whitespace characters are trimmed
|
||||
*
|
||||
* This flag is off by default.
|
||||
*
|
||||
* \deprecated This flag is deprecated
|
||||
*/
|
||||
#if !defined(__INTEL_COMPILER) || __INTEL_COMPILER > 800
|
||||
PUGIXML_DEPRECATED
|
||||
#endif
|
||||
const unsigned int parse_wnorm_attribute = 0x0080;
|
||||
|
||||
/**
|
||||
|
@ -173,41 +173,6 @@ TEST_XML(dom_node_wildcard_star, "<node cd='1'/>")
|
||||
CHECK(node.attribute_w(STR("*?*d*")).as_int() == 1);
|
||||
}
|
||||
|
||||
// parse_wnorm_attribute flag
|
||||
TEST(parse_attribute_wnorm)
|
||||
{
|
||||
xml_document doc;
|
||||
|
||||
for (int eol = 0; eol < 2; ++eol)
|
||||
for (int wconv = 0; wconv < 2; ++wconv)
|
||||
{
|
||||
unsigned int flags = parse_minimal | parse_wnorm_attribute | (eol ? parse_eol : 0) | (wconv ? parse_wconv_attribute : 0);
|
||||
CHECK(doc.load(STR("<node id=' \t\r\rval1 \rval2\r\nval3\nval4\r\r'/>"), flags));
|
||||
CHECK_STRING(doc.child(STR("node")).attribute(STR("id")).value(), STR("val1 val2 val3 val4"));
|
||||
}
|
||||
}
|
||||
|
||||
TEST(parse_attribute_variations_wnorm)
|
||||
{
|
||||
xml_document doc;
|
||||
|
||||
for (int wnorm = 0; wnorm < 2; ++wnorm)
|
||||
for (int eol = 0; eol < 2; ++eol)
|
||||
for (int wconv = 0; wconv < 2; ++wconv)
|
||||
for (int escapes = 0; escapes < 2; ++escapes)
|
||||
{
|
||||
unsigned int flags = parse_minimal;
|
||||
|
||||
flags |= (wnorm ? parse_wnorm_attribute : 0);
|
||||
flags |= (eol ? parse_eol : 0);
|
||||
flags |= (wconv ? parse_wconv_attribute : 0);
|
||||
flags |= (escapes ? parse_escapes : 0);
|
||||
|
||||
CHECK(doc.load(STR("<node id='1'/>"), flags));
|
||||
CHECK_STRING(doc.child(STR("node")).attribute(STR("id")).value(), STR("1"));
|
||||
}
|
||||
}
|
||||
|
||||
// document order
|
||||
TEST_XML(document_order_coverage, "<node id='1'/>")
|
||||
{
|
||||
|
@ -424,25 +424,41 @@ TEST(parse_attribute_eol_wconv)
|
||||
CHECK_STRING(doc.child(STR("node")).attribute(STR("id")).value(), STR(" val1 val2 val3 val4 "));
|
||||
}
|
||||
|
||||
TEST(parse_attribute_variations)
|
||||
TEST(parse_attribute_wnorm)
|
||||
{
|
||||
xml_document doc;
|
||||
|
||||
for (int eol = 0; eol < 2; ++eol)
|
||||
for (int wconv = 0; wconv < 2; ++wconv)
|
||||
for (int escapes = 0; escapes < 2; ++escapes)
|
||||
{
|
||||
unsigned int flags = parse_minimal;
|
||||
|
||||
flags |= (eol ? parse_eol : 0);
|
||||
flags |= (wconv ? parse_wconv_attribute : 0);
|
||||
flags |= (escapes ? parse_escapes : 0);
|
||||
|
||||
CHECK(doc.load(STR("<node id='1'/>"), flags));
|
||||
CHECK_STRING(doc.child(STR("node")).attribute(STR("id")).value(), STR("1"));
|
||||
}
|
||||
{
|
||||
unsigned int flags = parse_minimal | parse_wnorm_attribute | (eol ? parse_eol : 0) | (wconv ? parse_wconv_attribute : 0);
|
||||
CHECK(doc.load(STR("<node id=' \t\r\rval1 \rval2\r\nval3\nval4\r\r'/>"), flags));
|
||||
CHECK_STRING(doc.child(STR("node")).attribute(STR("id")).value(), STR("val1 val2 val3 val4"));
|
||||
}
|
||||
}
|
||||
|
||||
TEST(parse_attribute_variations)
|
||||
{
|
||||
xml_document doc;
|
||||
|
||||
for (int wnorm = 0; wnorm < 2; ++wnorm)
|
||||
for (int eol = 0; eol < 2; ++eol)
|
||||
for (int wconv = 0; wconv < 2; ++wconv)
|
||||
for (int escapes = 0; escapes < 2; ++escapes)
|
||||
{
|
||||
unsigned int flags = parse_minimal;
|
||||
|
||||
flags |= (wnorm ? parse_wnorm_attribute : 0);
|
||||
flags |= (eol ? parse_eol : 0);
|
||||
flags |= (wconv ? parse_wconv_attribute : 0);
|
||||
flags |= (escapes ? parse_escapes : 0);
|
||||
|
||||
CHECK(doc.load(STR("<node id='1'/>"), flags));
|
||||
CHECK_STRING(doc.child(STR("node")).attribute(STR("id")).value(), STR("1"));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
TEST(parse_attribute_error)
|
||||
{
|
||||
xml_document doc;
|
||||
|
Loading…
x
Reference in New Issue
Block a user