Moved control images one per directory and updated render checker to generate paths and filenames more cleanly. All tests pass for me.
@ -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 )
|
||||
{
|
||||
|
@ -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;
|
||||
|
@ -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 );
|
||||
|
@ -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();
|
||||
|
@ -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();
|
||||
|
@ -256,8 +256,7 @@ bool TestQgsRasterLayer::render( QString theTestType )
|
||||
{
|
||||
mReport += "<h2>" + theTestType + "</h2>\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();
|
||||
|
@ -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();
|
||||
|
Before Width: | Height: | Size: 470 KiB After Width: | Height: | Size: 470 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 470 KiB After Width: | Height: | Size: 470 KiB |
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 118 KiB After Width: | Height: | Size: 118 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
13
tests/testdata/control_images/expected_raster/expected_raster.png.aux.xml
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
<PAMDataset>
|
||||
<Metadata domain="IMAGE_STRUCTURE">
|
||||
<MDI key="INTERLEAVE">PIXEL</MDI>
|
||||
</Metadata>
|
||||
<PAMRasterBand band="1">
|
||||
<Metadata>
|
||||
<MDI key="STATISTICS_MINIMUM">0</MDI>
|
||||
<MDI key="STATISTICS_MAXIMUM">255</MDI>
|
||||
<MDI key="STATISTICS_MEAN">127.2</MDI>
|
||||
<MDI key="STATISTICS_STDDEV">81.364365664583</MDI>
|
||||
</Metadata>
|
||||
</PAMRasterBand>
|
||||
</PAMDataset>
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 680 B After Width: | Height: | Size: 680 B |
Before Width: | Height: | Size: 470 KiB After Width: | Height: | Size: 470 KiB |
Before Width: | Height: | Size: 470 KiB After Width: | Height: | Size: 470 KiB |