Update text renderer tests

This commit is contained in:
Nyall Dawson 2017-04-28 19:41:43 +10:00
parent 455f9738dd
commit 38414b3878
4 changed files with 13 additions and 55 deletions

View File

@ -19,7 +19,8 @@ from qgis.core import (QgsTextBufferSettings,
QgsTextShadowSettings,
QgsTextFormat,
QgsUnitTypes,
QgsMapUnitScale)
QgsMapUnitScale,
QgsBlurEffect)
from qgis.gui import (QgsTextFormatWidget, QgsTextFormatDialog)
from qgis.PyQt.QtGui import (QColor, QPainter)
from qgis.PyQt.QtCore import (Qt, QSizeF, QPointF)
@ -42,6 +43,7 @@ class PyQgsTextFormatWidget(unittest.TestCase):
s.setOpacity(0.5)
s.setJoinStyle(Qt.RoundJoin)
s.setBlendMode(QPainter.CompositionMode_Difference)
s.setPaintEffect(QgsBlurEffect.create({'blur_level': '10', 'enabled': '1'}))
return s
def checkBufferSettings(self, s):
@ -55,6 +57,8 @@ class PyQgsTextFormatWidget(unittest.TestCase):
self.assertEqual(s.opacity(), 0.5)
self.assertEqual(s.joinStyle(), Qt.RoundJoin)
self.assertEqual(s.blendMode(), QPainter.CompositionMode_Difference)
self.assertTrue(s.paintEffect())
self.assertEqual(s.paintEffect().blurLevel(), 10)
def createBackgroundSettings(self):
s = QgsTextBackgroundSettings()
@ -81,6 +85,7 @@ class PyQgsTextFormatWidget(unittest.TestCase):
s.setStrokeWidth(7)
s.setStrokeWidthUnit(QgsUnitTypes.RenderMapUnits)
s.setStrokeWidthMapUnitScale(QgsMapUnitScale(QgsMapUnitScale(25, 26)))
s.setPaintEffect(QgsBlurEffect.create({'blur_level': '6', 'enabled': '1'}))
return s
def checkBackgroundSettings(self, s):
@ -108,6 +113,8 @@ class PyQgsTextFormatWidget(unittest.TestCase):
self.assertEqual(s.strokeWidth(), 7)
self.assertEqual(s.strokeWidthUnit(), QgsUnitTypes.RenderMapUnits)
self.assertEqual(s.strokeWidthMapUnitScale(), QgsMapUnitScale(25, 26))
self.assertTrue(s.paintEffect())
self.assertEqual(s.paintEffect().blurLevel(), 6)
def createShadowSettings(self):
s = QgsTextShadowSettings()

View File

@ -988,7 +988,7 @@ class PyQgsTextRenderer(unittest.TestCase):
format.background().setStrokeWidth(3)
format.background().setStrokeWidthUnit(QgsUnitTypes.RenderMillimeters)
assert self.checkRender(format, 'background_outline', QgsTextRenderer.Background)
def testDrawBackgroundEffect(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
@ -998,13 +998,12 @@ class PyQgsTextRenderer(unittest.TestCase):
format.background().setType(QgsTextBackgroundSettings.ShapeRectangle)
format.background().setSize(QSizeF(30, 20))
format.background().setSizeType(QgsTextBackgroundSettings.SizeFixed)
format.background().setPaintEffect( QgsBlurEffect.create({'blur_level':'10','enabled':'1'}) )
assert self.checkRender(format, 'text_buffer_interior', QgsTextRenderer.Buffer, text=['test'])
format.background().setPaintEffect(QgsBlurEffect.create({'blur_level': '10', 'enabled': '1'}))
assert self.checkRender(format, 'background_effect', QgsTextRenderer.Background, text=['test'])
def testDrawText(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRender(format, 'text_bold', QgsTextRenderer.Text, text=['test'])
@ -1012,7 +1011,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextPoint(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRenderPoint(format, 'text_point_bold', QgsTextRenderer.Text, text=['test'])
@ -1031,7 +1029,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextColor(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(0, 255, 0))
@ -1040,7 +1037,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextOpacity(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setOpacity(0.7)
@ -1049,7 +1045,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextBlendMode(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(100, 100, 100))
@ -1059,7 +1054,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextAngle(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRender(format, 'text_angled', QgsTextRenderer.Text, angle=90 / 180 * 3.141, text=['test'])
@ -1067,7 +1061,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextMapUnits(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(5)
format.setSizeUnit(QgsUnitTypes.RenderMapUnits)
assert self.checkRender(format, 'text_mapunits', QgsTextRenderer.Text, text=['test'])
@ -1075,7 +1068,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextPixels(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(50)
format.setSizeUnit(QgsUnitTypes.RenderPixels)
assert self.checkRender(format, 'text_pixels', QgsTextRenderer.Text, text=['test'])
@ -1083,7 +1075,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawMultiLineText(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRender(format, 'text_multiline', QgsTextRenderer.Text, text=['test', 'multi', 'line'])
@ -1091,7 +1082,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawMultiLineTextPoint(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRenderPoint(format, 'text_point_multiline', QgsTextRenderer.Text, text=['test', 'multi', 'line'])
@ -1099,7 +1089,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawLineHeightText(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setLineHeight(1.5)
@ -1108,7 +1097,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferSizeMM(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
@ -1119,7 +1107,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferDisabled(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(False)
@ -1128,7 +1115,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferSizeMapUnits(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
@ -1139,7 +1125,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferSizePixels(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
@ -1150,7 +1135,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferColor(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
@ -1162,7 +1146,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferOpacity(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
@ -1174,7 +1157,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferFillInterior(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
@ -1186,19 +1168,17 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawBufferEffect(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
format.buffer().setSize(2)
format.buffer().setSizeUnit(QgsUnitTypes.RenderMillimeters)
format.buffer().setPaintEffect( QgsBlurEffect.create({'blur_level':'10','enabled':'1'}) )
assert self.checkRender(format, 'text_buffer_interior', QgsTextRenderer.Buffer, text=['test'])
format.buffer().setPaintEffect(QgsBlurEffect.create({'blur_level': '10', 'enabled': '1'}))
assert self.checkRender(format, 'text_buffer_effect', QgsTextRenderer.Buffer, text=['test'])
def testDrawShadow(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1213,7 +1193,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowOffsetAngle(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1229,7 +1208,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowOffsetMapUnits(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1244,7 +1222,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowOffsetPixels(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1259,7 +1236,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowBlurRadiusMM(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1275,7 +1251,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowBlurRadiusMapUnits(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1291,7 +1266,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowBlurRadiusPixels(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1307,7 +1281,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowOpacity(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1322,7 +1295,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowColor(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1337,7 +1309,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowScale(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1352,7 +1323,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowScaleUp(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1367,7 +1337,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowBackgroundPlacement(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1386,7 +1355,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawShadowBufferPlacement(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.setColor(QColor(255, 255, 255))
@ -1403,7 +1371,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithBuffer(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.buffer().setEnabled(True)
@ -1414,7 +1381,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithBackground(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.background().setEnabled(True)
@ -1427,7 +1393,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithBufferAndBackground(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.background().setEnabled(True)
@ -1444,7 +1409,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithShadowAndBuffer(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.shadow().setEnabled(True)
@ -1462,7 +1426,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithShadowBelowTextAndBuffer(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.shadow().setEnabled(True)
@ -1481,7 +1444,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithBackgroundAndShadow(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.shadow().setEnabled(True)
@ -1500,7 +1462,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithShadowBelowTextAndBackground(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.shadow().setEnabled(True)
@ -1520,7 +1481,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithBackgroundBufferAndShadow(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.shadow().setEnabled(True)
@ -1543,7 +1503,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithBackgroundBufferAndShadowBelowText(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.shadow().setEnabled(True)
@ -1568,7 +1527,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextWithBackgroundBufferAndShadowBelowBuffer(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(60)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
format.shadow().setEnabled(True)
@ -1593,7 +1551,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextRectMultilineRightAlign(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRender(format, 'text_rect_multiline_right_aligned', text=['test', 'right', 'aligned'],
@ -1602,7 +1559,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextRectRightAlign(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRender(format, 'text_rect_right_aligned', text=['test'],
@ -1611,7 +1567,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextRectMultilineCenterAlign(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRender(format, 'text_rect_multiline_center_aligned', text=['test', 'c', 'aligned'],
@ -1629,7 +1584,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextPointMultilineRightAlign(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRenderPoint(format, 'text_point_right_multiline_aligned', text=['test', 'right', 'aligned'],
@ -1638,7 +1592,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextPointMultilineCenterAlign(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRenderPoint(format, 'text_point_center_multiline_aligned', text=['test', 'center', 'aligned'],
@ -1647,7 +1600,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextPointRightAlign(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRenderPoint(format, 'text_point_right_aligned', text=['test'],
@ -1656,7 +1608,6 @@ class PyQgsTextRenderer(unittest.TestCase):
def testDrawTextPointCenterAlign(self):
format = QgsTextFormat()
format.setFont(getTestFont('bold'))
format.setFont(getTestFont('bold'))
format.setSize(30)
format.setSizeUnit(QgsUnitTypes.RenderPoints)
assert self.checkRenderPoint(format, 'text_point_center_aligned', text=['test'],

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB