void OutputTestCases( XmlWriter& xml, const Stats& stats ) {
            std::vector<TestCaseStats>::const_iterator it = stats.m_testCaseStats.begin();
            std::vector<TestCaseStats>::const_iterator itEnd = stats.m_testCaseStats.end();
            for(; it != itEnd; ++it ) {

                XmlWriter::ScopedElement e = xml.scopedElement( "testcase" );
                xml.writeAttribute( "classname", it->m_className );
                xml.writeAttribute( "name", it->m_name );
                xml.writeAttribute( "time", "tbd" );

                OutputTestResult( xml, *it );

                std::string stdOut = trim( it->m_stdOut );
                if( !stdOut.empty() )
                    xml.scopedElement( "system-out" ).writeText( stdOut, false );
                std::string stdErr = trim( it->m_stdErr );
                if( !stdErr.empty() )
                    xml.scopedElement( "system-err" ).writeText( stdErr, false );
            }
        }
        void OutputTestResult( XmlWriter& xml, const TestCaseStats& stats ) {
            std::vector<TestStats>::const_iterator it = stats.m_testStats.begin();
            std::vector<TestStats>::const_iterator itEnd = stats.m_testStats.end();
            for(; it != itEnd; ++it ) {
                if( it->m_element != "success" ) {
                    XmlWriter::ScopedElement e = xml.scopedElement( it->m_element );

                    xml.writeAttribute( "message", it->m_message );
                    xml.writeAttribute( "type", it->m_resultType );
                    if( !it->m_content.empty() )
                        xml.writeText( it->m_content );
                }
            }
        }
Exemple #3
0
    void MALItem::serialize(XmlWriter& writer) const
    {
        writer.startElement("MALitem");
        writer.writeAttribute("version", "1");
        using std::to_string;

        writer.writeElement("series_itemdb_id",   to_string(series_itemdb_id));
        writer.writeElement("series_title",                 series_title);
        writer.writeElement("series_preferred_title",       series_preferred_title);
        writer.writeElement("series_date_begin",            series_date_begin);
        writer.writeElement("series_date_end",              series_date_end);
        writer.writeElement("image_url",                    image_url);

        writer.startElement("series_synonyms");
        std::for_each(std::begin(series_synonyms), std::end(series_synonyms),
                      std::bind(&XmlWriter::writeElement,
                                std::ref(writer),
                                "series_synonym",
                                std::placeholders::_1));
        writer.endElement();

        writer.writeElement("series_synopsis",              series_synopsis );

        writer.startElement("tags");
        std::for_each(std::begin(tags), std::end(tags),
                      std::bind(&XmlWriter::writeElement,
                                std::ref(writer),
                                "tag",
                                std::placeholders::_1));
        writer.endElement();

        writer.writeElement("date_start",                   date_start);
        writer.writeElement("date_finish",                  date_finish);
        writer.writeElement("id",                 to_string(id));
        writer.writeElement("last_updated",       to_string(last_updated));
        writer.writeElement("score",              to_string(score));
        writer.writeElement("enable_reconsuming", to_string(enable_reconsuming));
        writer.writeElement("fansub_group",                 fansub_group);
        writer.writeElement("comments",                     comments);
        writer.writeElement("downloaded_items",   to_string(downloaded_items));
        writer.writeElement("times_consumed",     to_string(times_consumed));
        writer.writeElement("reconsume_value",    to_string(reconsume_value));
        writer.writeElement("priority",           to_string(priority));
        writer.writeElement("enable_discussion",  to_string(enable_discussion));
        writer.writeElement("has_details",        to_string(has_details));
        writer.endElement();
    }