From 3024ff7d32e1c902580bff3fcdb0232afab43c75 Mon Sep 17 00:00:00 2001 From: aavit Date: Fri, 28 Jan 2011 11:52:44 +0100 Subject: Make updating single baseline work again --- tests/arthur/baselineserver/src/baselineserver.cpp | 4 ++-- tests/arthur/baselineserver/src/baselineserver.h | 2 +- tests/arthur/baselineserver/src/report.cpp | 15 ++++++--------- tests/arthur/baselineserver/src/report.h | 3 ++- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/tests/arthur/baselineserver/src/baselineserver.cpp b/tests/arthur/baselineserver/src/baselineserver.cpp index fef592e..d3710ac 100644 --- a/tests/arthur/baselineserver/src/baselineserver.cpp +++ b/tests/arthur/baselineserver/src/baselineserver.cpp @@ -426,13 +426,13 @@ QString BaselineHandler::clearAllBaselines(const QString &context) return QString(QLS("%1 of %2 baselines cleared from context ")).arg((tot-failed)/2).arg(tot/2) + context; } -QString BaselineHandler::updateBaselines(const QString &context, const QString &mismatchContext, const QString &itemId) +QString BaselineHandler::updateBaselines(const QString &context, const QString &mismatchContext, const QString &itemFile) { int tot = 0; int failed = 0; QString storagePrefix = BaselineServer::storagePath() + QLC('/'); // If itemId is set, update just that one, otherwise, update all: - QString filter = (itemId.isEmpty() ? QLS("*") : itemId) + QLS("_????."); // Match any checksum. #vulnerable to changes in file naming + QString filter = itemFile.isEmpty() ? QLS("*_????.") : itemFile; QDirIterator it(storagePrefix + mismatchContext, QStringList() << filter + QLS(FileFormat) << filter + QLS(MetadataFileExt)); while (it.hasNext()) { tot++; diff --git a/tests/arthur/baselineserver/src/baselineserver.h b/tests/arthur/baselineserver/src/baselineserver.h index 0f14c8c..33b2ed7 100644 --- a/tests/arthur/baselineserver/src/baselineserver.h +++ b/tests/arthur/baselineserver/src/baselineserver.h @@ -109,7 +109,7 @@ public: // CGI callbacks: static QString view(const QString &baseline, const QString &rendered, const QString &compared); static QString clearAllBaselines(const QString &context); - static QString updateBaselines(const QString &context, const QString &mismatchContext, const QString &itemId); + static QString updateBaselines(const QString &context, const QString &mismatchContext, const QString &itemFile); static QString blacklistTest(const QString &context, const QString &itemId, bool removeFromBlacklist = false); private slots: diff --git a/tests/arthur/baselineserver/src/report.cpp b/tests/arthur/baselineserver/src/report.cpp index 217b92c..88b5625 100644 --- a/tests/arthur/baselineserver/src/report.cpp +++ b/tests/arthur/baselineserver/src/report.cpp @@ -180,7 +180,8 @@ void Report::writeFunctionResults(const ImageItemList &list) QString metadata = prefix + QLS(MetadataFileExt); if (item.status == ImageItem::Mismatch) { QString rendered = handler->pathForItem(item, false, false) + QLS(FileFormat); - writeItem(baseline, rendered, item, ctx, misCtx, metadata); + QString itemFile = prefix.section(QLC('/'), -1); + writeItem(baseline, rendered, item, itemFile, ctx, misCtx, metadata); } else { out << "image info\n" @@ -211,7 +212,8 @@ void Report::writeFunctionResults(const ImageItemList &list) out << "\n"; } -void Report::writeItem(const QString &baseline, const QString &rendered, const ImageItem &item, const QString &ctx, const QString &misCtx, const QString &metadata) +void Report::writeItem(const QString &baseline, const QString &rendered, const ImageItem &item, + const QString &itemFile, const QString &ctx, const QString &misCtx, const QString &metadata) { QString compared = generateCompared(baseline, rendered); QString pageUrl = BaselineServer::baseUrl() + path; @@ -223,13 +225,8 @@ void Report::writeItem(const QString &baseline, const QString &rendered, const I out << "\n" << "

Mismatch reported

\n" << "

Baseline Info\n" -#if 0 - << "

Let this be the new baseline

\n" -#else << "

Let this be the new baseline

\n" -#endif + << "&itemFile=" << itemFile << "&url=" << pageUrl << "\">Let this be the new baseline

\n" << "

Blacklist this item

\n" << "