本文整理汇总了C++中Xml::getTagContent方法的典型用法代码示例。如果您正苦于以下问题:C++ Xml::getTagContent方法的具体用法?C++ Xml::getTagContent怎么用?C++ Xml::getTagContent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Xml
的用法示例。
在下文中一共展示了Xml::getTagContent方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: sizeof
TEST( XmlTest, MetaDescription) {
const char* input_strs[] = {
// valid
"totally valid description",
"“inside special quotes” and outside",
// invalid
"my \"invalid\" double quote description",
"\"someone has quotes\", and nobody else has it"
"'my 'invalid' single quote description'",
"it's a description",
"what is this quote \" doing here?"
};
const char* format_strs[] = {
"<meta name=\"description\" content=\"%s\">",
"<meta name=\"description\" content='%s'>",
"<meta name=\"description\" content=\"%s\" ng-attr-content=\"{{meta.description}}\">",
"<meta name=\"description\" content='%s' ng-attr-content=\"{{meta.description}}\" >",
"<meta name=\"description\" ng-attr-content=\"{{meta.description}}\" content=\"%s\">",
"<meta name=\"description\" ng-attr-content=\"{{meta.description}}\" content='%s'>",
"<meta name=\"description\" content=\"%s\" other-content=\"%s\">",
"<meta name=\"description\" content='%s' other-content='%s'>",
"<meta content=\"%s\" name=\"description\">",
"<meta content='%s' name=\"description\">",
"<meta name=\"description\" other-content=\"%s\" content=\"%s\">",
"<meta name=\"description\" other-content='%s' content='%s'>"
};
size_t len = sizeof( input_strs ) / sizeof( input_strs[0] );
size_t format_len = sizeof( format_strs ) / sizeof( format_strs[0] );
for ( size_t i = 0; i < len; i++ ) {
for (size_t j = 0; j < format_len; j++) {
const char *input_str = input_strs[i];
char desc[MAX_BUF_SIZE];
std::sprintf(desc, format_strs[j], input_str, input_str);
char input[MAX_BUF_SIZE];
std::sprintf(input, HTML_HEAD_FORMAT, desc);
Xml xml;
ASSERT_TRUE(xml.set(input, strlen(input), 0, CT_HTML));
char buf[MAX_BUF_SIZE];
int32_t bufLen = MAX_BUF_SIZE;
int32_t contentLen = 0;
ASSERT_TRUE(xml.getTagContent("name", "description", buf, bufLen, 0, bufLen, &contentLen, false, TAG_META));
EXPECT_EQ(strlen(input_str), contentLen);
EXPECT_STREQ(input_str, buf);
}
}
}
示例2: than
TEST( XmlTest, MetaDescriptionStripTags) {
const char* input_strs[] = {
"my title<br> my <b>very important</b> text",
"Lesser than (<) and greater than (>).",
"We shouldn't strip <3 out",
"123 < 1234; 1234 > 123",
"<p style='text-align: center;'>A color cartoon drawing of a clapping cod fish ( rebus in the danish language for klaptorsk )</p>"
};
const char* expected_outputs[] = {
"my title. my very important text",
"Lesser than (<) and greater than (>).",
"We shouldn't strip <3 out",
"123 < 1234; 1234 > 123",
"A color cartoon drawing of a clapping cod fish ( rebus in the danish language for klaptorsk ). "
};
const char* format_str = "<meta name=\"description\" content=\"%s\">";
size_t len = sizeof( input_strs ) / sizeof( input_strs[0] );
ASSERT_EQ(sizeof(input_strs)/sizeof(input_strs[0]), sizeof(expected_outputs)/sizeof(expected_outputs[0]));
for ( size_t i = 0; i < len; i++ ) {
const char *input_str = input_strs[i];
const char *output_str = expected_outputs[i];
char desc[MAX_BUF_SIZE];
std::sprintf(desc, format_str, input_str, input_str);
char input[MAX_BUF_SIZE];
std::sprintf(input, HTML_HEAD_FORMAT, desc);
Xml xml;
ASSERT_TRUE(xml.set(input, strlen(input), 0, CT_HTML));
char buf[MAX_BUF_SIZE];
int32_t bufLen = MAX_BUF_SIZE;
int32_t contentLen = 0;
ASSERT_TRUE(xml.getTagContent("name", "description", buf, bufLen, 0, bufLen, &contentLen, false, TAG_META));
EXPECT_EQ(strlen(output_str), contentLen);
EXPECT_STREQ(output_str, buf);
}
}