summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorjasplin <qt-info@nokia.com>2010-04-29 10:19:49 +0200
committerjasplin <qt-info@nokia.com>2010-04-29 10:19:49 +0200
commit35ac562fe47e5a4a8e27856a7fed23175f7aad8b (patch)
tree09b2319fb5c50e43a0f7ceaef05f95e28f40c867 /src
parent5c31e4d684dcaf877ad9f3c9b5d6f6648298b6c9 (diff)
Show timestamp neighbor distance stats for index.
Diffstat (limited to 'src')
-rw-r--r--src/bm/bmrequest.cpp34
1 files changed, 31 insertions, 3 deletions
diff --git a/src/bm/bmrequest.cpp b/src/bm/bmrequest.cpp
index 08aff2b..97c234f 100644
--- a/src/bm/bmrequest.cpp
+++ b/src/bm/bmrequest.cpp
@@ -5156,7 +5156,10 @@ void BMRequest_IndexGetValues::appendToFilterTable(
const QStringList &filter, const QString &filterName, QString *reply)
{
reply->append(
- QString("<tr><td>%1:</td><td><table style=\"border:0px; padding:0px\">\n").arg(filterName));
+ QString(
+ "<tr><td style=\"text-align:right\">%1:</td><td>"
+ "<table style=\"border:0px; padding:0px\">\n")
+ .arg(filterName));
if (filter.isEmpty()) {
reply->append("<tr><td style=\"border:0px; padding:0px; color:green\">any</td></tr>\n");
} else {
@@ -5396,7 +5399,7 @@ void BMRequest_IndexGetValues::handleReply_HTML(const QStringList &args) const
branchFilter.append(branchNodes.at(i).toElement().attributeNode("name").value());
- // Filters table ...
+ // 'Filters' table ...
reply += "\n<br /><br />Filters:<table>\n";
appendToFilterTable(testCaseFilter, "Test case", &reply);
appendToFilterTable(metricFilter, "Metric", &reply);
@@ -5405,7 +5408,8 @@ void BMRequest_IndexGetValues::handleReply_HTML(const QStringList &args) const
appendToFilterTable(branchFilter, "Branch", &reply);
reply += "</table>";
- reply += "\n<br /><br />Result history statistics:<table>\n";
+ // 'Number of contributors' table ...
+ reply += "\n<br /><br />Number of contributors:<table style=\"text-align:right\">\n";
const int totalRH = argsElem.attributeNode("totalRH").value().toInt(&ok);
Q_ASSERT(ok);
reply += QString(
@@ -5422,6 +5426,30 @@ void BMRequest_IndexGetValues::handleReply_HTML(const QStringList &args) const
reply += QString("<tr><td>Final set:</td><td>%1</td></tr>\n").arg(finalTotalRH);
reply += "</table>\n";
+ // 'Timestamp neighbor distances' table ...
+ qreal distSecsSum = 0.0;
+ qreal minDistSecs = -1;
+ qreal maxDistSecs = -1;
+ for (int i = 1; i < timestamps.size(); ++i) {
+ const qreal distSecs = timestamps.at(i) - timestamps.at(i - 1);
+ distSecsSum += distSecs;
+ if (i == 1) {
+ minDistSecs = maxDistSecs = distSecs;
+ } else {
+ minDistSecs = qMin(minDistSecs, distSecs);
+ maxDistSecs = qMax(maxDistSecs, distSecs);
+ }
+ }
+ const qreal secsInDay = 86400.0;
+ reply += "\n<br /><br />Timestamp neighbor distances:<table style=\"text-align:right\">\n";
+ reply += QString("<tr><td>Min days:</td><td>%1</td></tr>\n")
+ .arg((timestamps.size() < 2) ? "n/a" : QString().setNum(minDistSecs / secsInDay, 'f', 2));
+ reply += QString("<tr><td>Avg days:</td><td>%1</td></tr>\n")
+ .arg((timestamps.size() < 2)
+ ? "n/a" : QString().setNum((distSecsSum / timestamps.size()) / secsInDay, 'f', 2));
+ reply += QString("<tr><td>Max days:</td><td>%1</td></tr>\n")
+ .arg((timestamps.size() < 2) ? "n/a" : QString().setNum(maxDistSecs / secsInDay, 'f', 2));
+ reply += "</table>\n";
// *** Values ***
reply += "\n<br /><br /><table style=\"border: 0px\">\n";