diff --git a/tests/src/core/qgsrenderchecker.cpp b/tests/src/core/qgsrenderchecker.cpp
index 24483dc54aa..597dfe50c8f 100644
--- a/tests/src/core/qgsrenderchecker.cpp
+++ b/tests/src/core/qgsrenderchecker.cpp
@@ -43,6 +43,13 @@ QString QgsRenderChecker::controlImagePath() const
return myControlImageDir;
}
+void QgsRenderChecker::setControlName(const QString theName)
+{
+ mControlName = theName;
+ mExpectedImageFile = controlImagePath() + theName + QDir::separator() +
+ theName + ".png";
+}
+
bool QgsRenderChecker::runTest( QString theTestName,
unsigned int theMismatchCount )
{
diff --git a/tests/src/core/qgsrenderchecker.h b/tests/src/core/qgsrenderchecker.h
index d3d9e86d5d5..e2585fc7ba1 100644
--- a/tests/src/core/qgsrenderchecker.h
+++ b/tests/src/core/qgsrenderchecker.h
@@ -44,7 +44,11 @@ public:
//only records time for actual render part
int elapsedTime() { return mElapsedTime; };
void setElapsedTimeTarget(int theTarget) { mElapsedTimeTarget = theTarget; };
- void setExpectedImage (QString theImageFileName) { mExpectedImageFile = theImageFileName; };
+ /** Base directory name for the control image (with control image path
+ * suffixed) the path to the image will be constructed like this:
+ * controlImagePath + '/' + mControlName + '/' + mControlName + '.png'
+ */
+ void setControlName(const QString theName);
void setRenderedImage (QString theImageFileName) { mRenderedImageFile = theImageFileName; };
void setMapRenderer ( QgsMapRenderer * thepMapRenderer) { mpMapRenderer = thepMapRenderer; };
/**
@@ -73,6 +77,7 @@ public:
private:
QString mReport;
QString mExpectedImageFile;
+ QString mControlName;
QString mRenderedImageFile;
unsigned int mMismatchCount;
unsigned int mMatchTarget;
diff --git a/tests/src/core/regression992.cpp b/tests/src/core/regression992.cpp
index bd940050500..f493089bc9c 100644
--- a/tests/src/core/regression992.cpp
+++ b/tests/src/core/regression992.cpp
@@ -106,8 +106,7 @@ void Regression992::regression992()
QVERIFY( mpRasterLayer->isValid() );
mpMapRenderer->setExtent( mpRasterLayer->extent() );
QgsRenderChecker myChecker;
- myChecker.setExpectedImage( myChecker.controlImagePath() +
- "expected_rgbwcmyk01_YeGeo.jp2.png" );
+ myChecker.setControlName( "expected_rgbwcmyk01_YeGeo.jp2" );
myChecker.setMapRenderer( mpMapRenderer );
// allow up to 300 mismatched pixels
bool myResultFlag = myChecker.runTest( "regression992", 300 );
diff --git a/tests/src/core/testqgsgeometry.cpp b/tests/src/core/testqgsgeometry.cpp
index ef5c6963c2b..1fbd1f33d0b 100644
--- a/tests/src/core/testqgsgeometry.cpp
+++ b/tests/src/core/testqgsgeometry.cpp
@@ -314,8 +314,7 @@ bool TestQgsGeometry::renderCheck( QString theTestName, QString theComment )
QString myFileName = myTmpDir + theTestName + ".png";
mImage.save( myFileName, "PNG" );
QgsRenderChecker myChecker;
- myChecker.setExpectedImage( myChecker.controlImagePath() +
- "expected_" + theTestName + ".png" );
+ myChecker.setControlName( "expected_" + theTestName );
myChecker.setRenderedImage( myFileName );
bool myResultFlag = myChecker.compareImages( theTestName );
mReport += myChecker.report();
diff --git a/tests/src/core/testqgsmaprenderer.cpp b/tests/src/core/testqgsmaprenderer.cpp
index 1b9869e7d06..a2d79ded5a1 100644
--- a/tests/src/core/testqgsmaprenderer.cpp
+++ b/tests/src/core/testqgsmaprenderer.cpp
@@ -193,8 +193,7 @@ void TestQgsMapRenderer::performanceTest()
{
mpMapRenderer->setExtent( mpPolysLayer->extent() );
QgsRenderChecker myChecker;
- myChecker.setExpectedImage(
- myChecker.controlImagePath() + "expected_maprender.png" );
+ myChecker.setControlName( "expected_maprender" );
myChecker.setMapRenderer( mpMapRenderer );
bool myResultFlag = myChecker.runTest( "maprender" );
mReport += myChecker.report();
diff --git a/tests/src/core/testqgsrasterlayer.cpp b/tests/src/core/testqgsrasterlayer.cpp
index e7942bc7ce3..9bb04935bc0 100644
--- a/tests/src/core/testqgsrasterlayer.cpp
+++ b/tests/src/core/testqgsrasterlayer.cpp
@@ -256,8 +256,7 @@ bool TestQgsRasterLayer::render( QString theTestType )
{
mReport += "
" + theTestType + "
\n";
QgsRenderChecker myChecker;
- myChecker.setExpectedImage( myChecker.controlImagePath()
- + "expected_" + theTestType + ".png" );
+ myChecker.setControlName( "expected_" + theTestType );
myChecker.setMapRenderer( mpMapRenderer );
bool myResultFlag = myChecker.runTest( theTestType );
mReport += "\n\n\n" + myChecker.report();
diff --git a/tests/src/core/testqgsrenderers.cpp b/tests/src/core/testqgsrenderers.cpp
index 835b550cbc7..b4894ed60e9 100644
--- a/tests/src/core/testqgsrenderers.cpp
+++ b/tests/src/core/testqgsrenderers.cpp
@@ -216,9 +216,7 @@ bool TestQgsRenderers::imageCheck( QString theTestType )
//ensure the rendered output matches our control image
mpMapRenderer->setExtent( mpPointsLayer->extent() );
QgsRenderChecker myChecker;
- QString myExpectedImage = myChecker.controlImagePath() +
- "expected_" + theTestType + ".png";
- myChecker.setExpectedImage( myExpectedImage );
+ myChecker.setControlName( "expected_" + theTestType );
myChecker.setMapRenderer( mpMapRenderer );
bool myResultFlag = myChecker.runTest( theTestType );
mReport += myChecker.report();
diff --git a/tests/testdata/control_images/expected_continuous.png b/tests/testdata/control_images/expected_continuous/expected_continuous.png
similarity index 100%
rename from tests/testdata/control_images/expected_continuous.png
rename to tests/testdata/control_images/expected_continuous/expected_continuous.png
diff --git a/tests/testdata/control_images/expected_geometry_bufferCheck.png b/tests/testdata/control_images/expected_geometry_bufferCheck/expected_geometry_bufferCheck.png
similarity index 100%
rename from tests/testdata/control_images/expected_geometry_bufferCheck.png
rename to tests/testdata/control_images/expected_geometry_bufferCheck/expected_geometry_bufferCheck.png
diff --git a/tests/testdata/control_images/expected_geometry_differenceCheck1.png b/tests/testdata/control_images/expected_geometry_differenceCheck1/expected_geometry_differenceCheck1.png
similarity index 100%
rename from tests/testdata/control_images/expected_geometry_differenceCheck1.png
rename to tests/testdata/control_images/expected_geometry_differenceCheck1/expected_geometry_differenceCheck1.png
diff --git a/tests/testdata/control_images/expected_geometry_differenceCheck2.png b/tests/testdata/control_images/expected_geometry_differenceCheck2/expected_geometry_differenceCheck2.png
similarity index 100%
rename from tests/testdata/control_images/expected_geometry_differenceCheck2.png
rename to tests/testdata/control_images/expected_geometry_differenceCheck2/expected_geometry_differenceCheck2.png
diff --git a/tests/testdata/control_images/expected_geometry_intersectionCheck1.png b/tests/testdata/control_images/expected_geometry_intersectionCheck1/expected_geometry_intersectionCheck1.png
similarity index 100%
rename from tests/testdata/control_images/expected_geometry_intersectionCheck1.png
rename to tests/testdata/control_images/expected_geometry_intersectionCheck1/expected_geometry_intersectionCheck1.png
diff --git a/tests/testdata/control_images/expected_geometry_simplifyCheck1.png b/tests/testdata/control_images/expected_geometry_simplifyCheck1/expected_geometry_simplifyCheck1.png
similarity index 100%
rename from tests/testdata/control_images/expected_geometry_simplifyCheck1.png
rename to tests/testdata/control_images/expected_geometry_simplifyCheck1/expected_geometry_simplifyCheck1.png
diff --git a/tests/testdata/control_images/expected_geometry_unionCheck1.png b/tests/testdata/control_images/expected_geometry_unionCheck1/expected_geometry_unionCheck1.png
similarity index 100%
rename from tests/testdata/control_images/expected_geometry_unionCheck1.png
rename to tests/testdata/control_images/expected_geometry_unionCheck1/expected_geometry_unionCheck1.png
diff --git a/tests/testdata/control_images/expected_geometry_unionCheck2.png b/tests/testdata/control_images/expected_geometry_unionCheck2/expected_geometry_unionCheck2.png
similarity index 100%
rename from tests/testdata/control_images/expected_geometry_unionCheck2.png
rename to tests/testdata/control_images/expected_geometry_unionCheck2/expected_geometry_unionCheck2.png
diff --git a/tests/testdata/control_images/expected_graduated.png b/tests/testdata/control_images/expected_graduated/expected_graduated.png
similarity index 100%
rename from tests/testdata/control_images/expected_graduated.png
rename to tests/testdata/control_images/expected_graduated/expected_graduated.png
diff --git a/tests/testdata/control_images/expected_landsat_875.png b/tests/testdata/control_images/expected_landsat_875/expected_landsat_875.png
similarity index 100%
rename from tests/testdata/control_images/expected_landsat_875.png
rename to tests/testdata/control_images/expected_landsat_875/expected_landsat_875.png
diff --git a/tests/testdata/control_images/expected_landsat_basic.png b/tests/testdata/control_images/expected_landsat_basic/expected_landsat_basic.png
similarity index 100%
rename from tests/testdata/control_images/expected_landsat_basic.png
rename to tests/testdata/control_images/expected_landsat_basic/expected_landsat_basic.png
diff --git a/tests/testdata/control_images/expected_maprender.png b/tests/testdata/control_images/expected_maprender/expected_maprender.png
similarity index 100%
rename from tests/testdata/control_images/expected_maprender.png
rename to tests/testdata/control_images/expected_maprender/expected_maprender.png
diff --git a/tests/testdata/control_images/expected_raster.png b/tests/testdata/control_images/expected_raster/expected_raster.png
similarity index 100%
rename from tests/testdata/control_images/expected_raster.png
rename to tests/testdata/control_images/expected_raster/expected_raster.png
diff --git a/tests/testdata/control_images/expected_raster/expected_raster.png.aux.xml b/tests/testdata/control_images/expected_raster/expected_raster.png.aux.xml
new file mode 100644
index 00000000000..a4b65f3577d
--- /dev/null
+++ b/tests/testdata/control_images/expected_raster/expected_raster.png.aux.xml
@@ -0,0 +1,13 @@
+
+
+ PIXEL
+
+
+
+ 0
+ 255
+ 127.2
+ 81.364365664583
+
+
+
diff --git a/tests/testdata/control_images/expected_raster_pseudo.png b/tests/testdata/control_images/expected_raster_pseudo/expected_raster_pseudo.png
similarity index 100%
rename from tests/testdata/control_images/expected_raster_pseudo.png
rename to tests/testdata/control_images/expected_raster_pseudo/expected_raster_pseudo.png
diff --git a/tests/testdata/control_images/expected_rgbwcmyk01_YeGeo.jp2.png b/tests/testdata/control_images/expected_rgbwcmyk01_YeGeo.jp2/expected_rgbwcmyk01_YeGeo.jp2.png
similarity index 100%
rename from tests/testdata/control_images/expected_rgbwcmyk01_YeGeo.jp2.png
rename to tests/testdata/control_images/expected_rgbwcmyk01_YeGeo.jp2/expected_rgbwcmyk01_YeGeo.jp2.png
diff --git a/tests/testdata/control_images/expected_single.png b/tests/testdata/control_images/expected_single/expected_single.png
similarity index 100%
rename from tests/testdata/control_images/expected_single.png
rename to tests/testdata/control_images/expected_single/expected_single.png
diff --git a/tests/testdata/control_images/expected_uniquevalue.png b/tests/testdata/control_images/expected_uniquevalue/expected_uniquevalue.png
similarity index 100%
rename from tests/testdata/control_images/expected_uniquevalue.png
rename to tests/testdata/control_images/expected_uniquevalue/expected_uniquevalue.png