Skip to content

Commit faa8be2

Browse files
committedMay 26, 2021
Add tests for QgsSymbol flags
1 parent bff6d5f commit faa8be2

File tree

1 file changed

+23
-1
lines changed

1 file changed

+23
-1
lines changed
 

‎tests/src/python/test_qgssymbol.py

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,8 @@
5555
QgsSymbolLayerUtils,
5656
QgsMarkerLineSymbolLayer,
5757
QgsArrowSymbolLayer,
58-
QgsSymbol
58+
QgsSymbol,
59+
Qgis
5960
)
6061

6162
from qgis.testing import unittest, start_app
@@ -168,6 +169,27 @@ def testSymbolTypeForGeometryType(self):
168169
self.assertEqual(QgsSymbol.symbolTypeForGeometryType(QgsWkbTypes.NullGeometry), QgsSymbol.Hybrid)
169170
self.assertEqual(QgsSymbol.symbolTypeForGeometryType(QgsWkbTypes.UnknownGeometry), QgsSymbol.Hybrid)
170171

172+
def testFlags(self):
173+
"""
174+
Test symbol flags
175+
"""
176+
s = QgsLineSymbol.createSimple({})
177+
self.assertEqual(s.flags(), Qgis.SymbolFlags())
178+
179+
s.setFlags(Qgis.SymbolFlag.RendererShouldUseSymbolLevels)
180+
self.assertEqual(s.flags(), Qgis.SymbolFlag.RendererShouldUseSymbolLevels)
181+
182+
s2 = s.clone()
183+
self.assertEqual(s2.flags(), Qgis.SymbolFlag.RendererShouldUseSymbolLevels)
184+
185+
# test that flags are saved/restored via XML
186+
doc = QDomDocument()
187+
context = QgsReadWriteContext()
188+
element = QgsSymbolLayerUtils.saveSymbol('test', s, doc, context)
189+
190+
s2 = QgsSymbolLayerUtils.loadSymbol(element, context)
191+
self.assertEqual(s2.flags(), Qgis.SymbolFlag.RendererShouldUseSymbolLevels)
192+
171193
def testCanCauseArtifactsBetweenAdjacentTiles(self):
172194
"""
173195
Test canCauseArtifactsBetweenAdjacentTiles()

0 commit comments

Comments
 (0)
Please sign in to comment.