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 ); } } }
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(); }