mirror of
https://github.com/jbeder/yaml-cpp.git
synced 2025-09-09 04:41:16 +00:00
Added all the 2.x tests
This commit is contained in:
@@ -147,10 +147,7 @@ namespace Test {
|
|||||||
MockEventHandler handler;\
|
MockEventHandler handler;\
|
||||||
std::stringstream stream(ex);\
|
std::stringstream stream(ex);\
|
||||||
YAML::Parser parser(stream);\
|
YAML::Parser parser(stream);\
|
||||||
parser.HandleNextDocument(handler)
|
while(parser.HandleNextDocument(handler))\
|
||||||
|
|
||||||
#define HANDLE_NEXT(ex)\
|
|
||||||
parser.HandleNextDocument(handler)
|
|
||||||
|
|
||||||
#define EXPECT_DOC_START()\
|
#define EXPECT_DOC_START()\
|
||||||
do {\
|
do {\
|
||||||
@@ -220,103 +217,359 @@ namespace Test {
|
|||||||
// 2.2
|
// 2.2
|
||||||
TEST MappingScalarsToScalars()
|
TEST MappingScalarsToScalars()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_2);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SCALAR("?", 0, "65");
|
||||||
|
EXPECT_SCALAR("?", 0, "avg");
|
||||||
|
EXPECT_SCALAR("?", 0, "0.278");
|
||||||
|
EXPECT_SCALAR("?", 0, "rbi");
|
||||||
|
EXPECT_SCALAR("?", 0, "147");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.3
|
// 2.3
|
||||||
TEST MappingScalarsToSequences()
|
TEST MappingScalarsToSequences()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_3);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "american");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Boston Red Sox");
|
||||||
|
EXPECT_SCALAR("?", 0, "Detroit Tigers");
|
||||||
|
EXPECT_SCALAR("?", 0, "New York Yankees");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SCALAR("?", 0, "national");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "New York Mets");
|
||||||
|
EXPECT_SCALAR("?", 0, "Chicago Cubs");
|
||||||
|
EXPECT_SCALAR("?", 0, "Atlanta Braves");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.4
|
// 2.4
|
||||||
TEST SequenceOfMappings()
|
TEST SequenceOfMappings()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_4);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "name");
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SCALAR("?", 0, "65");
|
||||||
|
EXPECT_SCALAR("?", 0, "avg");
|
||||||
|
EXPECT_SCALAR("?", 0, "0.278");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "name");
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SCALAR("?", 0, "63");
|
||||||
|
EXPECT_SCALAR("?", 0, "avg");
|
||||||
|
EXPECT_SCALAR("?", 0, "0.288");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.5
|
// 2.5
|
||||||
TEST SequenceOfSequences()
|
TEST SequenceOfSequences()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_5);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "name");
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SCALAR("?", 0, "avg");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_SCALAR("?", 0, "65");
|
||||||
|
EXPECT_SCALAR("?", 0, "0.278");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SCALAR("?", 0, "63");
|
||||||
|
EXPECT_SCALAR("?", 0, "0.288");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.6
|
// 2.6
|
||||||
TEST MappingOfMappings()
|
TEST MappingOfMappings()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_6);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SCALAR("?", 0, "65");
|
||||||
|
EXPECT_SCALAR("?", 0, "avg");
|
||||||
|
EXPECT_SCALAR("?", 0, "0.278");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SCALAR("?", 0, "63");
|
||||||
|
EXPECT_SCALAR("?", 0, "avg");
|
||||||
|
EXPECT_SCALAR("?", 0, "0.288");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.7
|
// 2.7
|
||||||
TEST TwoDocumentsInAStream()
|
TEST TwoDocumentsInAStream()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_7);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SCALAR("?", 0, "Ken Griffey");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Chicago Cubs");
|
||||||
|
EXPECT_SCALAR("?", 0, "St Louis Cardinals");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.8
|
// 2.8
|
||||||
TEST PlayByPlayFeed()
|
TEST PlayByPlayFeed()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_8);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "time");
|
||||||
|
EXPECT_SCALAR("?", 0, "20:03:20");
|
||||||
|
EXPECT_SCALAR("?", 0, "player");
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SCALAR("?", 0, "action");
|
||||||
|
EXPECT_SCALAR("?", 0, "strike (miss)");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "time");
|
||||||
|
EXPECT_SCALAR("?", 0, "20:03:47");
|
||||||
|
EXPECT_SCALAR("?", 0, "player");
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SCALAR("?", 0, "action");
|
||||||
|
EXPECT_SCALAR("?", 0, "grand slam");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.9
|
// 2.9
|
||||||
TEST SingleDocumentWithTwoComments()
|
TEST SingleDocumentWithTwoComments()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_9);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SCALAR("?", 0, "rbi");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SCALAR("?", 0, "Ken Griffey");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.10
|
// 2.10
|
||||||
TEST SimpleAnchor()
|
TEST SimpleAnchor()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_10);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "hr");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_SCALAR("?", 1, "Sammy Sosa");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SCALAR("?", 0, "rbi");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_ALIAS(1);
|
||||||
|
EXPECT_SCALAR("?", 0, "Ken Griffey");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.11
|
// 2.11
|
||||||
TEST MappingBetweenSequences()
|
TEST MappingBetweenSequences()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_11);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Detroit Tigers");
|
||||||
|
EXPECT_SCALAR("?", 0, "Chicago cubs");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-07-23");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "New York Yankees");
|
||||||
|
EXPECT_SCALAR("?", 0, "Atlanta Braves");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-07-02");
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-08-12");
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-08-14");
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.12
|
// 2.12
|
||||||
TEST CompactNestedMapping()
|
TEST CompactNestedMapping()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_12);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "item");
|
||||||
|
EXPECT_SCALAR("?", 0, "Super Hoop");
|
||||||
|
EXPECT_SCALAR("?", 0, "quantity");
|
||||||
|
EXPECT_SCALAR("?", 0, "1");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "item");
|
||||||
|
EXPECT_SCALAR("?", 0, "Basketball");
|
||||||
|
EXPECT_SCALAR("?", 0, "quantity");
|
||||||
|
EXPECT_SCALAR("?", 0, "4");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "item");
|
||||||
|
EXPECT_SCALAR("?", 0, "Big Shoes");
|
||||||
|
EXPECT_SCALAR("?", 0, "quantity");
|
||||||
|
EXPECT_SCALAR("?", 0, "1");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.13
|
// 2.13
|
||||||
TEST InLiteralsNewlinesArePreserved()
|
TEST InLiteralsNewlinesArePreserved()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_13);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SCALAR("!", 0,
|
||||||
|
"\\//||\\/||\n"
|
||||||
|
"// || ||__");
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.14
|
// 2.14
|
||||||
TEST InFoldedScalarsNewlinesBecomeSpaces()
|
TEST InFoldedScalarsNewlinesBecomeSpaces()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_14);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SCALAR("!", 0, "Mark McGwire's year was crippled by a knee injury.");
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.15
|
// 2.15
|
||||||
TEST FoldedNewlinesArePreservedForMoreIndentedAndBlankLines()
|
TEST FoldedNewlinesArePreservedForMoreIndentedAndBlankLines()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_15);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SCALAR("!", 0,
|
||||||
|
"Sammy Sosa completed another fine season with great stats.\n"
|
||||||
|
"\n"
|
||||||
|
" 63 Home Runs\n"
|
||||||
|
" 0.288 Batting Average\n"
|
||||||
|
"\n"
|
||||||
|
"What a year!");
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.16
|
// 2.16
|
||||||
TEST IndentationDeterminesScope()
|
TEST IndentationDeterminesScope()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_16);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "name");
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_SCALAR("?", 0, "accomplishment");
|
||||||
|
EXPECT_SCALAR("!", 0, "Mark set a major league home run record in 1998.\n");
|
||||||
|
EXPECT_SCALAR("?", 0, "stats");
|
||||||
|
EXPECT_SCALAR("!", 0,
|
||||||
|
"65 Home Runs\n"
|
||||||
|
"0.278 Batting Average\n");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.17
|
// 2.17
|
||||||
TEST QuotedScalars()
|
TEST QuotedScalars()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_17);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "unicode");
|
||||||
|
EXPECT_SCALAR("!", 0, "Sosa did fine.\u263A");
|
||||||
|
EXPECT_SCALAR("?", 0, "control");
|
||||||
|
EXPECT_SCALAR("!", 0, "\b1998\t1999\t2000\n");
|
||||||
|
EXPECT_SCALAR("?", 0, "hex esc");
|
||||||
|
EXPECT_SCALAR("!", 0, "\x0d\x0a is \r\n");
|
||||||
|
EXPECT_SCALAR("?", 0, "single");
|
||||||
|
EXPECT_SCALAR("!", 0, "\"Howdy!\" he cried.");
|
||||||
|
EXPECT_SCALAR("?", 0, "quoted");
|
||||||
|
EXPECT_SCALAR("!", 0, " # Not a 'comment'.");
|
||||||
|
EXPECT_SCALAR("?", 0, "tie-fighter");
|
||||||
|
EXPECT_SCALAR("!", 0, "|\\-*-/|");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.18
|
// 2.18
|
||||||
TEST MultiLineFlowScalars()
|
TEST MultiLineFlowScalars()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_18);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "plain");
|
||||||
|
EXPECT_SCALAR("?", 0, "This unquoted scalar spans many lines.");
|
||||||
|
EXPECT_SCALAR("?", 0, "quoted");
|
||||||
|
EXPECT_SCALAR("!", 0, "So does this quoted scalar.\n");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: 2.19 - 2.22 schema tags
|
// TODO: 2.19 - 2.22 schema tags
|
||||||
@@ -324,37 +577,228 @@ namespace Test {
|
|||||||
// 2.23
|
// 2.23
|
||||||
TEST VariousExplicitTags()
|
TEST VariousExplicitTags()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_23);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "not-date");
|
||||||
|
EXPECT_SCALAR("tag:yaml.org,2002:str", 0, "2002-04-28");
|
||||||
|
EXPECT_SCALAR("?", 0, "picture");
|
||||||
|
EXPECT_SCALAR("tag:yaml.org,2002:binary", 0,
|
||||||
|
"R0lGODlhDAAMAIQAAP//9/X\n"
|
||||||
|
"17unp5WZmZgAAAOfn515eXv\n"
|
||||||
|
"Pz7Y6OjuDg4J+fn5OTk6enp\n"
|
||||||
|
"56enmleECcgggoBADs=\n");
|
||||||
|
EXPECT_SCALAR("?", 0, "application specific tag");
|
||||||
|
EXPECT_SCALAR("!something", 0,
|
||||||
|
"The semantics of the tag\n"
|
||||||
|
"above may be different for\n"
|
||||||
|
"different documents.");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.24
|
// 2.24
|
||||||
TEST GlobalTags()
|
TEST GlobalTags()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_24);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SEQ_START("tag:clarkevans.com,2002:shape", 0);
|
||||||
|
EXPECT_MAP_START("tag:clarkevans.com,2002:circle", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "center");
|
||||||
|
EXPECT_MAP_START("?", 1);
|
||||||
|
EXPECT_SCALAR("?", 0, "x");
|
||||||
|
EXPECT_SCALAR("?", 0, "73");
|
||||||
|
EXPECT_SCALAR("?", 0, "y");
|
||||||
|
EXPECT_SCALAR("?", 0, "129");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SCALAR("?", 0, "radius");
|
||||||
|
EXPECT_SCALAR("?", 0, "7");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("tag:clarkevans.com,2002:line", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "start");
|
||||||
|
EXPECT_ALIAS(1);
|
||||||
|
EXPECT_SCALAR("?", 0, "finish");
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "x");
|
||||||
|
EXPECT_SCALAR("?", 0, "89");
|
||||||
|
EXPECT_SCALAR("?", 0, "y");
|
||||||
|
EXPECT_SCALAR("?", 0, "102");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("tag:clarkevans.com,2002:label", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "start");
|
||||||
|
EXPECT_ALIAS(1);
|
||||||
|
EXPECT_SCALAR("?", 0, "color");
|
||||||
|
EXPECT_SCALAR("?", 0, "0xFFEEBB");
|
||||||
|
EXPECT_SCALAR("?", 0, "text");
|
||||||
|
EXPECT_SCALAR("?", 0, "Pretty vector drawing.");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.25
|
// 2.25
|
||||||
TEST UnorderedSets()
|
TEST UnorderedSets()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_25);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("tag:yaml.org,2002:set", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_NULL(0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_NULL(0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Ken Griffey");
|
||||||
|
EXPECT_NULL(0);
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.26
|
// 2.26
|
||||||
TEST OrderedMappings()
|
TEST OrderedMappings()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_26);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_SEQ_START("tag:yaml.org,2002:omap", 0);
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Mark McGwire");
|
||||||
|
EXPECT_SCALAR("?", 0, "65");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Sammy Sosa");
|
||||||
|
EXPECT_SCALAR("?", 0, "63");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Ken Griffey");
|
||||||
|
EXPECT_SCALAR("?", 0, "58");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.27
|
// 2.27
|
||||||
TEST Invoice()
|
TEST Invoice()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_27);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("tag:clarkevans.com,2002:invoice", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "invoice");
|
||||||
|
EXPECT_SCALAR("?", 0, "34843");
|
||||||
|
EXPECT_SCALAR("?", 0, "date");
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-01-23");
|
||||||
|
EXPECT_SCALAR("?", 0, "bill-to");
|
||||||
|
EXPECT_MAP_START("?", 1);
|
||||||
|
EXPECT_SCALAR("?", 0, "given");
|
||||||
|
EXPECT_SCALAR("?", 0, "Chris");
|
||||||
|
EXPECT_SCALAR("?", 0, "family");
|
||||||
|
EXPECT_SCALAR("?", 0, "Dumars");
|
||||||
|
EXPECT_SCALAR("?", 0, "address");
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "lines");
|
||||||
|
EXPECT_SCALAR("!", 0,
|
||||||
|
"458 Walkman Dr.\n"
|
||||||
|
"Suite #292\n");
|
||||||
|
EXPECT_SCALAR("?", 0, "city");
|
||||||
|
EXPECT_SCALAR("?", 0, "Royal Oak");
|
||||||
|
EXPECT_SCALAR("?", 0, "state");
|
||||||
|
EXPECT_SCALAR("?", 0, "MI");
|
||||||
|
EXPECT_SCALAR("?", 0, "postal");
|
||||||
|
EXPECT_SCALAR("?", 0, "48046");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SCALAR("?", 0, "ship-to");
|
||||||
|
EXPECT_ALIAS(1);
|
||||||
|
EXPECT_SCALAR("?", 0, "product");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "sku");
|
||||||
|
EXPECT_SCALAR("?", 0, "BL394D");
|
||||||
|
EXPECT_SCALAR("?", 0, "quantity");
|
||||||
|
EXPECT_SCALAR("?", 0, "4");
|
||||||
|
EXPECT_SCALAR("?", 0, "description");
|
||||||
|
EXPECT_SCALAR("?", 0, "Basketball");
|
||||||
|
EXPECT_SCALAR("?", 0, "price");
|
||||||
|
EXPECT_SCALAR("?", 0, "450.00");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "sku");
|
||||||
|
EXPECT_SCALAR("?", 0, "BL4438H");
|
||||||
|
EXPECT_SCALAR("?", 0, "quantity");
|
||||||
|
EXPECT_SCALAR("?", 0, "1");
|
||||||
|
EXPECT_SCALAR("?", 0, "description");
|
||||||
|
EXPECT_SCALAR("?", 0, "Super Hoop");
|
||||||
|
EXPECT_SCALAR("?", 0, "price");
|
||||||
|
EXPECT_SCALAR("?", 0, "2392.00");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_SCALAR("?", 0, "tax");
|
||||||
|
EXPECT_SCALAR("?", 0, "251.42");
|
||||||
|
EXPECT_SCALAR("?", 0, "total");
|
||||||
|
EXPECT_SCALAR("?", 0, "4443.52");
|
||||||
|
EXPECT_SCALAR("?", 0, "comments");
|
||||||
|
EXPECT_SCALAR("?", 0, "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2.28
|
// 2.28
|
||||||
TEST LogFile()
|
TEST LogFile()
|
||||||
{
|
{
|
||||||
return " not written yet";
|
HANDLE(ex2_28);
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Time");
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-11-23 15:01:42 -5");
|
||||||
|
EXPECT_SCALAR("?", 0, "User");
|
||||||
|
EXPECT_SCALAR("?", 0, "ed");
|
||||||
|
EXPECT_SCALAR("?", 0, "Warning");
|
||||||
|
EXPECT_SCALAR("?", 0, "This is an error message for the log file");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Time");
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-11-23 15:02:31 -5");
|
||||||
|
EXPECT_SCALAR("?", 0, "User");
|
||||||
|
EXPECT_SCALAR("?", 0, "ed");
|
||||||
|
EXPECT_SCALAR("?", 0, "Warning");
|
||||||
|
EXPECT_SCALAR("?", 0, "A slightly different error message.");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
EXPECT_DOC_START();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "Date");
|
||||||
|
EXPECT_SCALAR("?", 0, "2001-11-23 15:03:17 -5");
|
||||||
|
EXPECT_SCALAR("?", 0, "User");
|
||||||
|
EXPECT_SCALAR("?", 0, "ed");
|
||||||
|
EXPECT_SCALAR("?", 0, "Fatal");
|
||||||
|
EXPECT_SCALAR("?", 0, "Unknown variable \"bar\"");
|
||||||
|
EXPECT_SCALAR("?", 0, "Stack");
|
||||||
|
EXPECT_SEQ_START("?", 0);
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "file");
|
||||||
|
EXPECT_SCALAR("?", 0, "TopClass.py");
|
||||||
|
EXPECT_SCALAR("?", 0, "line");
|
||||||
|
EXPECT_SCALAR("?", 0, "23");
|
||||||
|
EXPECT_SCALAR("?", 0, "code");
|
||||||
|
EXPECT_SCALAR("!", 0, "x = MoreObject(\"345\\n\")\n");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_MAP_START("?", 0);
|
||||||
|
EXPECT_SCALAR("?", 0, "file");
|
||||||
|
EXPECT_SCALAR("?", 0, "MoreClass.py");
|
||||||
|
EXPECT_SCALAR("?", 0, "line");
|
||||||
|
EXPECT_SCALAR("?", 0, "58");
|
||||||
|
EXPECT_SCALAR("?", 0, "code");
|
||||||
|
EXPECT_SCALAR("!", 0, "foo = bar");
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_SEQ_END();
|
||||||
|
EXPECT_MAP_END();
|
||||||
|
EXPECT_DOC_END();
|
||||||
|
DONE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: 5.1 - 5.2 BOM
|
// TODO: 5.1 - 5.2 BOM
|
||||||
|
Reference in New Issue
Block a user