Skip to content

Commit fd7b2fb

Browse files
committedMar 31, 2023
Fix tests on different dpi setups
1 parent 37f3de3 commit fd7b2fb

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed
 

‎tests/src/python/test_qgsannotationlinetextitem.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
QgsProject,
3232
QgsReadWriteContext,
3333
QgsRectangle,
34-
QgsRenderChecker,
34+
QgsMultiRenderChecker,
3535
QgsRenderContext,
3636
QgsTextFormat,
3737
QgsVertexId,
@@ -226,6 +226,7 @@ def testRenderLine(self):
226226
settings.setFlag(QgsMapSettings.Antialiasing, False)
227227

228228
rc = QgsRenderContext.fromMapSettings(settings)
229+
rc.setScaleFactor(96 / 25.4) # 96 DPI
229230
image = QImage(600, 300, QImage.Format_ARGB32)
230231
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
231232
image.setDotsPerMeterY(int(96 / 25.4 * 1000))
@@ -259,6 +260,7 @@ def testRenderLineOffsetPositive(self):
259260
settings.setFlag(QgsMapSettings.Antialiasing, False)
260261

261262
rc = QgsRenderContext.fromMapSettings(settings)
263+
rc.setScaleFactor(96 / 25.4) # 96 DPI
262264
image = QImage(600, 300, QImage.Format_ARGB32)
263265
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
264266
image.setDotsPerMeterY(int(96 / 25.4 * 1000))
@@ -292,6 +294,7 @@ def testRenderLineOffsetNegative(self):
292294
settings.setFlag(QgsMapSettings.Antialiasing, False)
293295

294296
rc = QgsRenderContext.fromMapSettings(settings)
297+
rc.setScaleFactor(96 / 25.4) # 96 DPI
295298
image = QImage(600, 300, QImage.Format_ARGB32)
296299
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
297300
image.setDotsPerMeterY(int(96 / 25.4 * 1000))
@@ -323,6 +326,7 @@ def testRenderLineTruncate(self):
323326
settings.setFlag(QgsMapSettings.Antialiasing, False)
324327

325328
rc = QgsRenderContext.fromMapSettings(settings)
329+
rc.setScaleFactor(96 / 25.4) # 96 DPI
326330
image = QImage(600, 300, QImage.Format_ARGB32)
327331
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
328332
image.setDotsPerMeterY(int(96 / 25.4 * 1000))
@@ -354,6 +358,7 @@ def testRenderLineTextExpression(self):
354358
settings.setFlag(QgsMapSettings.Antialiasing, False)
355359

356360
rc = QgsRenderContext.fromMapSettings(settings)
361+
rc.setScaleFactor(96 / 25.4) # 96 DPI
357362
image = QImage(600, 300, QImage.Format_ARGB32)
358363
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
359364
image.setDotsPerMeterY(int(96 / 25.4 * 1000))
@@ -386,6 +391,7 @@ def testRenderWithTransform(self):
386391
settings.setFlag(QgsMapSettings.Antialiasing, False)
387392

388393
rc = QgsRenderContext.fromMapSettings(settings)
394+
rc.setScaleFactor(96 / 25.4) # 96 DPI
389395
rc.setCoordinateTransform(QgsCoordinateTransform(QgsCoordinateReferenceSystem('EPSG:4326'), settings.destinationCrs(), QgsProject.instance()))
390396
image = QImage(600, 300, QImage.Format_ARGB32)
391397
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
@@ -406,12 +412,12 @@ def imageCheck(self, name, reference_image, image):
406412
temp_dir = QDir.tempPath() + '/'
407413
file_name = temp_dir + 'annotation_' + name + ".png"
408414
image.save(file_name, "PNG")
409-
checker = QgsRenderChecker()
415+
checker = QgsMultiRenderChecker()
410416
checker.setControlPathPrefix("annotation_layer")
411417
checker.setControlName("expected_" + reference_image)
412418
checker.setRenderedImage(file_name)
413419
checker.setColorTolerance(2)
414-
result = checker.compareImages(name, 20)
420+
result = checker.runTest(name, 20)
415421
TestQgsAnnotationLineTextItem.report += checker.report()
416422
return result
417423

‎tests/src/python/test_qgsannotationpointtextitem.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,7 @@ def testRenderMarker(self):
196196
settings.setFlag(QgsMapSettings.Antialiasing, False)
197197

198198
rc = QgsRenderContext.fromMapSettings(settings)
199+
rc.setScaleFactor(96 / 25.4) # 96 DPI
199200
image = QImage(200, 200, QImage.Format_ARGB32)
200201
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
201202
image.setDotsPerMeterY(int(96 / 25.4 * 1000))
@@ -230,6 +231,7 @@ def testRenderMarkerExpression(self):
230231
settings.setFlag(QgsMapSettings.Antialiasing, False)
231232

232233
rc = QgsRenderContext.fromMapSettings(settings)
234+
rc.setScaleFactor(96 / 25.4) # 96 DPI
233235
image = QImage(200, 200, QImage.Format_ARGB32)
234236
image.setDotsPerMeterX(int(96 / 25.4 * 1000))
235237
image.setDotsPerMeterY(int(96 / 25.4 * 1000))
@@ -264,6 +266,7 @@ def testRenderWithTransform(self):
264266
settings.setFlag(QgsMapSettings.Antialiasing, False)
265267

266268
rc = QgsRenderContext.fromMapSettings(settings)
269+
rc.setScaleFactor(96 / 25.4) # 96 DPI
267270
rc.setCoordinateTransform(QgsCoordinateTransform(QgsCoordinateReferenceSystem('EPSG:4326'), settings.destinationCrs(), QgsProject.instance()))
268271
image = QImage(200, 200, QImage.Format_ARGB32)
269272
image.setDotsPerMeterX(int(96 / 25.4 * 1000))

0 commit comments

Comments
 (0)
Please sign in to comment.