const bool testEntry()

in modules/atom/atom-test.cpp [114:181]


const bool testEntry() {
    {
        const list<value> i = nilListValue + element + value("item")
                + value(nilListValue + element + value("name") + value(string("Apple")))
                + value(nilListValue + element + value("price") + value(string("$2.99")));
        const list<value> a = nilListValue + (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(i)));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == itemEntry);
    }
    {
        const list<value> a = nilListValue + (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(string("Apple"))));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == itemTextEntry);
    }
    {
        const list<value> a = nilListValue + (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")))
                + value(nilListValue + element + value("updated") + value(string("Fri Jan 01 08:11:36 PDT 2012"))));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == itemNoContentEntry);
    }
    {
        const list<value> a = content(readATOMEntry(mklist(itemEntry)));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == itemEntry);
    }
    {
        const list<value> a = content(readATOMEntry(mklist(itemTextEntry)));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == itemTextEntry);
    }
    {
        const list<value> a = content(readATOMEntry(mklist(itemNoContentEntry)));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == itemNoContentEntry);
    }
    {
        const list<value> a = content(readATOMEntry(mklist(itemEmptyTitleEntry)));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == itemEmptyTitleEntry);
    }
    {
        const list<value> a = content(readATOMEntry(mklist(incompleteEntry)));
        ostringstream os;
        writeATOMEntry<ostream*>(writer, &os, a);
        assert(str(os) == completedEntry);
    }
    return true;
}