in modules/atom/atom-test.cpp [225:287]
const bool testFeed() {
{
const list<value> a = nilListValue + (nilListValue + element + value("feed")
+ value(nilListValue + element + value("title") + value(string("Feed")))
+ value(nilListValue + element + value("id") + value(string("1234")))
+ value(nilListValue + element + value("author") + value(string("jane@example.com")))
+ value(nilListValue + element + value("updated") + value(string("Fri Jan 01 08:11:36 PDT 2012"))));
ostringstream os;
writeATOMFeed<ostream*>(writer, &os, a);
assert(str(os) == emptyFeed);
}
{
const list<value> a = content(readATOMFeed(mklist(emptyFeed)));
ostringstream os;
writeATOMFeed<ostream*>(writer, &os, a);
assert(str(os) == emptyFeed);
}
{
const list<value> i1 = nilListValue + element + "item"
+ (nilListValue + element + "name" + "Apple")
+ (nilListValue + element + "price" + "$2.99");
const list<value> i2 = nilListValue + element + "item"
+ (nilListValue + element + "name" + "Orange")
+ (nilListValue + element + "price" + "$3.55");
const list<value> i = nilListValue
+ value(nilListValue + element + value("entry")
+ value(nilListValue + element + value("title") + value(string("item")))
+ value(nilListValue + element + value("id") + value(string("cart-53d67a61-aa5e-4e5e-8401-39edeba8b83b")))
+ value(nilListValue + element + value("author") + value(string("jane@example.com")))
+ value(nilListValue + element + value("updated") + value(string("Fri Jan 01 08:11:36 PDT 2012")))
+ value(nilListValue + element + value("content") + value(i1)))
+ value(nilListValue + element + value("entry")
+ value(nilListValue + element + value("title") + value(string("item")))
+ value(nilListValue + element + value("id") + value(string("cart-53d67a61-aa5e-4e5e-8401-39edeba8b83c")))
+ value(nilListValue + element + value("author") + value(string("jane@example.com")))
+ value(nilListValue + element + value("updated") + value(string("Fri Jan 01 08:11:36 PDT 2012")))
+ value(nilListValue + element + value("content") + value(i2)));
const list<value> a = nilListValue + (append<value>(nilListValue + element + value("feed")
+ value(nilListValue + element + value("title") + value(string("Feed")))
+ value(nilListValue + element + value("id") + value("1234")),
i));
ostringstream os;
writeATOMFeed<ostream*>(writer, &os, a);
assert(str(os) == itemFeed);
}
{
const list<value> a = content(readATOMFeed(mklist(itemFeed)));
ostringstream os;
writeATOMFeed<ostream*>(writer, &os, a);
assert(str(os) == itemFeed);
}
{
const list<value> a = elementsToValues(content(readATOMFeed(mklist(itemFeed))));
ostringstream os;
writeATOMFeed<ostream*>(writer, &os, valuesToElements(a));
assert(str(os) == itemFeed);
}
return true;
}