From a1fd6c60455def34663c8a5621f21bab8fee9c21 Mon Sep 17 00:00:00 2001 From: aavit Date: Tue, 23 Nov 2010 11:52:09 +0100 Subject: Generate thumbnails for faster loading of the web reports --- tests/arthur/baselineserver/src/htmlpage.cpp | 20 ++++++++++++++++++-- tests/arthur/baselineserver/src/htmlpage.h | 1 + tests/auto/lancelot/tst_lancelot.cpp | 8 +++++--- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/tests/arthur/baselineserver/src/htmlpage.cpp b/tests/arthur/baselineserver/src/htmlpage.cpp index a4e9e0c..9659505 100644 --- a/tests/arthur/baselineserver/src/htmlpage.cpp +++ b/tests/arthur/baselineserver/src/htmlpage.cpp @@ -104,7 +104,7 @@ void HTMLPage::writeHeader(const ImageItem &item) "Script\n" "Baseline\n" "Rendered\n" - "Comparison\n" + "Comparison (diffs are RED)\n" "Info/Action\n" "
"; } @@ -129,7 +129,7 @@ void HTMLPage::addItem(const QString &baseline, const QString &rendered, const I out << "" << item.scriptName << "\n"; QStringList images = QStringList() << baseline << rendered << compared; foreach(const QString& img, images) - out << "\n"; + out << "\n"; out << "

Replace baseline with rendered

" @@ -191,6 +191,22 @@ QString HTMLPage::generateCompared(const QString &baseline, const QString &rende } +QString HTMLPage::generateThumbnail(const QString &image) +{ + QString res = image; + QFileInfo imgFI(root+image); + res.chop(imgFI.suffix().length() + 1); + res += QLS("_thumbnail.jpg"); + QFileInfo resFI(root+res); + if (resFI.exists() && resFI.lastModified() > imgFI.lastModified()) + return res; + QStringList args; + args << root+image << QLS("-resize") << QLS("240x240") << QLS("-quality") << QLS("50") << root+res; + QProcess::execute(QLS("convert"), args); + return res; +} + + void HTMLPage::handleCGIQuery(const QString &query) { QUrl cgiUrl(QLS("http://dummy/cgi-bin/dummy.cgi?") + query); diff --git a/tests/arthur/baselineserver/src/htmlpage.h b/tests/arthur/baselineserver/src/htmlpage.h index f5e6e1c..5f1e051 100644 --- a/tests/arthur/baselineserver/src/htmlpage.h +++ b/tests/arthur/baselineserver/src/htmlpage.h @@ -62,6 +62,7 @@ private: void writeHeader(const ImageItem &item); void writeFooter(); QString generateCompared(const QString &baseline, const QString &rendered, bool fuzzy = false); + QString generateThumbnail(const QString &image); QString root; QString path; diff --git a/tests/auto/lancelot/tst_lancelot.cpp b/tests/auto/lancelot/tst_lancelot.cpp index 0c5d787..7c6fe66 100644 --- a/tests/auto/lancelot/tst_lancelot.cpp +++ b/tests/auto/lancelot/tst_lancelot.cpp @@ -299,13 +299,15 @@ void tst_Lancelot::paint(QPaintDevice *device, const QStringList &script, const pcmd.setPainter(&p); pcmd.setFilePath(filePath); pcmd.runCommands(); + p.end(); if (simfail) { - p.drawLine(0, 0, 800, 800); + QPainter p2(device); + p2.setPen(QPen(QBrush(Qt::cyan), 3, Qt::DashLine)); + p2.drawLine(200, 200, 600, 600); + p2.drawLine(600, 200, 200, 600); simfail = false; } - - p.end(); } #define main rmain -- cgit v0.12